code: public BoundingBox getBoundingBox() {
  
  		GeometryEnvelope envelope = null;
  
  		long offset = 0;
  		boolean hasResults = true;
  
  		while (hasResults) {
  
  			hasResults = false;
  
  			FeatureResultSet resultSet = featureDao.queryForChunk(chunkLimit,
  					offset);
  			try {
  				while (resultSet.moveToNext()) {
  					hasResults = true;
  
  					FeatureRow featureRow = resultSet.getRow();
  					GeometryEnvelope featureEnvelope = featureRow
  							.getGeometryEnvelope();
  					if (featureEnvelope != null) {
  
  						if (envelope == null) {
  							envelope = featureEnvelope;
  						} else {
  							envelope = envelope.union(featureEnvelope);
  						}
  
  					}
  				}
  			} finally {
  				resultSet.close();
  			}
  
  			offset += chunkLimit;
  		}
  
  		BoundingBox boundingBox = null;
  		if (envelope != null) {
  			boundingBox = new BoundingBox(envelope);
  		}
  
  		return boundingBox;
  	}
docs: Manually build the bounds of the feature table
  
  @return bounding box