Hi all,

I need to upload rdf files to a service to be stored in a graph. I use
Clerezza within Stanbol and tried to implement the service like in the
following code snippet

@POST
    @Path("multipartrdf")
    @Consumes(MediaType.MULTIPART_FORM_DATA)
    @Produces("text/plain")
    public String uploadMultipartRdf(@Context final UriInfo uriInfo,
            @HeaderParam("Content-Type") String mediaType,
            @FormDataParam("data") InputStream stream,
            @FormDataParam("dataset") String dataset) throws Exception {

        AccessController.checkPermission(new AllPermission());
        final MGraph graph = new SimpleMGraph();

        if(mediaType.equals(SupportedFormat.RDF_XML)) {
            parser.parse(graph, stream, SupportedFormat.RDF_XML);
        }

The problem here is that I need to add the following dependencies to my
project's pom file

<dependency>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-server</artifactId>
            <version>1.8</version>
        </dependency>
        <dependency>
            <groupId>com.sun.jersey.contribs</groupId>
            <artifactId>jersey-multipart</artifactId>
            <version>1.8</version>
        </dependency>
    </dependencies>

The project is compiled but is not activated when I try to install it
because I need to import the same bundles in the Felix framework and it
raises the following conflicts:

Cannot start (org.osgi.framework.
BundleException: Uses constraint violation. Unable to resolve bundle
revision eu.fusepool.datalifecycle [182.1] because it is exposed to package
'javax.ws.rs' from bundle revisions com.sun.jersey.core [274.0] and
javax.ws.rs-api [267.0] via two dependency chains.

Chain 1:
  eu.fusepool.datalifecycle [182.1]
    import: (&(osgi.wiring.package=javax.ws.rs
)(version>=1.0.0)(!(version>=3.0.0)))
     |
    export: osgi.wiring.package=javax.ws.rs
  com.sun.jersey.core [274.0]

Chain 2:
  eu.fusepool.datalifecycle [182.1]
    import: (osgi.wiring.package=org.apache.clerezza.jaxrs.utils)
     |
    export: osgi.wiring.package=org.apache.clerezza.jaxrs.utils; uses:=
javax.ws.rs
  org.apache.clerezza.jaxrs.utils [147.0]
    import: (&(osgi.wiring.package=javax.ws.rs
)(version>=1.0.0)(!(version>=3.0.0)))
     |
    export: osgi.wiring.package=javax.ws.rs
  javax.ws.rs-api [267.0]) org.osgi.framework.BundleException: Uses
constraint violation. Unable to resolve bundle revision
eu.fusepool.datalifecycle [182.1] because it is exposed to package '
javax.ws.rs' from bundle revisions com.sun.jersey.core [274.0] and
javax.ws.rs-api [267.0] via two dependency chains.

Looking at the Clarezza API it seems there are some utilities to handle
multipart messages so that I shouldn't have the issues above but I couldn't
find any code snippet or example on how to use those utilities, can anyone
point me to an example ?

Thanks in advance

Luigi

Reply via email to