Hello Hao Le 13/05/2018 à 05:17, phuong hao nguyen thi a écrit :
> I tried clean and build web service layer but have error, I think > error from dependency in the pom.xml. So Can I edit pom.xml file in > sis-webapp ? or I create a new package ? > I suggest to stay in the sis-webapp module and edit the pom.xml file as needed. I think that the web application currently in sis-webapp does not work any more. Maybe it could be fixed, but since that old application does not follow OGC standard, I think we can replace it by your work. > And my code, Will I push directly to the SIS or I create a new > repository for the SIS in my github? > SIS still use Subversion, so work on GitHub can not yet be pushed directly to SIS. I suggest to temporarily create a new repository on GitHub for now; we may have better alternatives later. > This is CSW design architecture model v2.0.2 that I will use to develop csw > service: (Note : It is still incomplete I will update in my work process) > https://docs.google.com/document/d/1GrKRMCbOaaQw2ic4NYBX4QsczbR7n_rJevGyj4yBzgo/edit?usp=sharing > > My reference source: > OpenGIS Catalogue Service Implementation Specification > http://portal.opengeospatial.org/files/?artifact_id=20555 This is the specification version 2.0.2. There is a version 3.0 there: * http://docs.opengeospatial.org/is/12-168r6/12-168r6.html * http://docs.opengeospatial.org/is/12-176r7/12-176r7.html Would it be possible to use version 3 instead than 2? I think they have not too many changes. > OGC Web Service Common Implementation Specification > http://portal.opengeospatial.org/files/?artifact_id=38867 > UML to java mapping > http://docs.geotools.org/latest/javadocs/org/opengis/annotation/doc-files/UML-Java.html The later reference can be replaced by http://www.geoapi.org/3.0/javadoc/UML-Java.html, which is actually the original source. However this mapping needs to be updated. I suggest the following changes: * DateTime: java.time.ZonedDateTime instead than java.util.Date. The java.time package is new in Java 8 and replace the old java.util.Date class. * Scale, Length, Angle and Measure: javax.measure.quantity.Dimensionless, Length, Angle and Quantity<?>. * Record and RecordType: org.opengis.util.Record and RecordType. > The first I will developing REST service on the server-side and I am > starting with GetCapabilities operation. > Cool! > And in the learning process I see in UML (getCapabilities request > parameter) have a (CostList) Sections, Can you explain this part ? and > How I can extends CostList in java ? (can you give me a example?) > A CodeList is very similar to java.lang.Enum with one difference: it can be extended (i.e. users can add their own items at runtime). CodeList are very common in OGC/ISO standards, but do not exist in the standard Java library. For this reason we extend a CodeList class provided by GeoAPI. According http://docs.opengeospatial.org/is/12-176r7/12-176r7.html#44, the Section code list can take the following values (before users add their own items if they want): "ServiceIdentification", "ServiceProvider", "OperationsMetadata", "Filter_Capabilities". This can be defined in Java like below (Note: the OGC_12_176 constant does not yet exist in GeoAPI; I will add it): @UML(identifier="Section", specification=OGC_12_176) public final class Section extends CodeList<Section> { private static final List<Section> VALUES = new ArrayList<>(5); @UML(identifier="ServiceIdentification", obligation=CONDITIONAL, specification=OGC_12_176) public static final Section SERVICE_IDENTIFICATION = new Section("IDENTIFICATION"); // ... add other constants private Section(final String name) { super(name, VALUES); } } You can see code list in GeoAPI for more code, javadoc, etc. For example you may look at org.opengis.metadata.citation.Role. Have a nice first official day at GSoC 2018! Martin
