Java 哪个jar文件包含org.n52.wps.server.observerpattern.ISubject以及如何下载它?
我想写一个.java文件并将其导入wps服务,但我的代码如下Java 哪个jar文件包含org.n52.wps.server.observerpattern.ISubject以及如何下载它?,java,gis,Java,Gis,我想写一个.java文件并将其导入wps服务,但我的代码如下 package org.n52.wps.demo; import java.util.ArrayList; import java.util.List; import java.util.Map; import org.geotools.feature.FeatureCollection; import org.geotools.feature.FeatureIterator; import org.geotools.geomet
package org.n52.wps.demo;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.geotools.feature.FeatureCollection;
import org.geotools.feature.FeatureIterator;
import org.geotools.geometry.iso.topograph2D.Coordinate;
import org.geotools.geometry.jts.CoordinateSequenceTransformer;
import org.n52.wps.server.AbstractSelfDescribingAlgorithm;
import org.n52.wps.io.data.IData;
import org.n52.wps.io.data.binding.complex.GTVectorDataBinding;
import net.opengis.wps.x100.ProcessDescriptionType;
public class ConvexHullDemo extends AbstractSelfDescribingAlgorithm {
@Override
public Class<?> getInputDataType(String identifier) {
if (identifier.equalsIgnoreCase("FEATURES")) {
return GTVectorDataBinding.class;
}
}
@Override
public Class<?> getOutputDataType(String identifier) {
if (identifier.equalsIgnoreCase("FEATURE")) {
return GTVectorDataBinding.class;
}
}
@Override
public List<String> getInputIdentifiers() {
List<String> list=new ArrayList<String>();
list.add("FEATURES");
return list;
}
@Override
public List<String> getOutputIdentifiers() {
List<String> list=new ArrayList<String>();
list.add("polygon");
return list;
}
@Override
public Map<String, IData> run(Map<String, List<IData>> inputData) {
if (inputData == null || !inputData.containsKey("FEATURES")) {
throw new RuntimeException("Error while allocating input parameters");
}
List<IData> dataList = inputData.get("FEATURES");
if (dataList == null || dataList.size() != 1) {
throw new RuntimeException("Error while allocating input parameters");
}
IData firstInputData = dataList.get(0);
FeatureCollection featureCollection = ((GTVectorDataBinding) firstInputData).getPayload();
}
FeatureIterator iter = featureCollection.
List<Coordinate> coordinateList = new ArrayList<Coordinate>();
int counter = 0;
Geometry unifiedGeometry = null;
while (iter.hasNext()) {
SimpleFeature feature = (SimpleFeature) iter.next();
if (feature.getDefaultGeometry() == null) {
throw new NullPointerException("defaultGeometry is null in feature id: "+ feature.getID());
}
Geometry geom = (Geometry) feature.getDefaultGeometry();
Coordinate[] coordinateArray = geom.getCoordinates();
for(Coordinate coordinate : coordinateArray){
coordinateList.add(coordinate);
}
}
}
package org.n52.wps.demo;
导入java.util.ArrayList;
导入java.util.List;
导入java.util.Map;
导入org.geotools.feature.FeatureCollection;
导入org.geotools.feature.FeatureIterator;
导入org.geotools.geometry.iso.topograph2D.Coordinate;
导入org.geotools.geometry.jts.CoordinateSequenceTransformer;
导入org.n52.wps.server.AbstractSelfDescriptionAlgorithm;
导入org.n52.wps.io.data.IData;
导入org.n52.wps.io.data.binding.complex.GTVectorDataBinding;
导入net.opengis.wps.x100.ProcessDescriptionType;
公共类ConvexHullDemo扩展了AbstractSelfDescription算法{
@凌驾
公共类getInputDataType(字符串标识符){
if(标识符.equalsIgnoreCase(“特征”)){
返回GTVectorDataBinding.class;
}
}
@凌驾
公共类getOutputDataType(字符串标识符){
if(标识符.equalsIgnoreCase(“特征”)){
返回GTVectorDataBinding.class;
}
}
@凌驾
公共列表getInputIdentifiers(){
列表=新的ArrayList();
列表。添加(“特征”);
退货清单;
}
@凌驾
公共列表getOutputIdentifiers(){
列表=新的ArrayList();
添加(“多边形”);
退货清单;
}
@凌驾
公共地图运行(地图输入数据){
if(inputData==null | |!inputData.containsKey(“功能”)){
抛出新的RuntimeException(“分配输入参数时出错”);
}
List dataList=inputData.get(“功能”);
if(dataList==null | | dataList.size()!=1){
抛出新的RuntimeException(“分配输入参数时出错”);
}
IData firstInputData=dataList.get(0);
FeatureCollection FeatureCollection=((GTVectorDataBinding)firstInputData).getPayload();
}
FeatureIterator iter=featureCollection。
列表坐标列表=新的ArrayList();
int计数器=0;
几何统一计量=空;
while(iter.hasNext()){
SimpleFeature=(SimpleFeature)iter.next();
if(feature.getDefaultGeometry()==null){
抛出新的NullPointerException(“defaultGeometry在feature id:+feature.getID()中为null”);
}
几何图形几何图形=(几何图形)特征。getDefaultGeometry();
坐标[]坐标array=geom.getCoordinates();
用于(坐标:CoordinatorRay){
坐标列表。添加(坐标);
}
}
}
和此代码的完整教程:
但出现了这样的错误:
这条线上有多个标记
- ConvexHullDemo类型的层次结构不一致
- 无法解析类型org.n52.wps.server.observerpattern.ISubject。它是从必需的.class文件间接引用的
哪个jar包含这个
org.n52.wps.server.observerpattern.ISubject
以及我如何下载它?在发布问题之前,您可能需要多读一点,因为我在您链接的网站上找到了您问题的答案:
它说您应该设置WPS,如下所述: