0

私は.javaファイルを書き、それを52north 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.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);
                }
}

}

このコードの完全なチュートリアル: Java Process によるカスタム 52north WPS

しかし、このエラーが表示されます:

この行に複数のマーカー

  • タイプ ConvexHullDemo の階層が矛盾しています

  • タイプ org.n52.wps.server.observerpattern.ISubject を解決できません。必要な .class ファイルから間接的に参照されている

これが含まれているのはorg.n52.wps.server.observerpattern.ISubjectどのjarで、どうすればダウンロードできますか?

4

1 に答える 1

1

あなたがリンクしたサイトであなたの質問への答えを見つけたので、質問を投稿する前にもう少し読みたいと思うかもしれません:

ここで説明されている WPS をセットアップする必要があると言われています: https://wiki.52north.org/bin/view/Processing/52nWebProcessingService

于 2013-04-27T12:00:26.043 に答える