Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
    Marco Castigliego
    @marcocast
    unfortunately when i start the server
    i always get an exception on that method
    WARNING: The following warnings have been detected: WARNING: Cannot create new registration for component type class com.ucd.parkabled.rest.ReportRest: Existing previous registration found for the type.
    Existing previous registration found for the type.; source='null', [FATAL] No injection source found for a parameter of type public javax.ws.rs.core.Response com.ucd.parkabled.rest.ReportRest.send(java.io.InputStream,com.ucd.parkabled.model.ParkingLocation) throws java.lang.Exception at index 0.; source='ResourceMethod{httpMethod=POST, consumedTypes=[multipart/form-data], producedTypes=[application/json], suspended=false, suspendTimeout=0, suspendTimeoutUnit=MILLISECONDS, invocable=Invocable{handler=ClassBasedMethodHandler{handlerClass=class com.ucd.parkabled.rest.ReportRest, handlerConstructors=[org.glassfish.jersey.server.model.HandlerConstructor@1f971be1]}, definitionMethod=public javax.ws.rs.core.Response com.ucd.parkabled.rest.ReportRest.send(java.io.InputStream,com.ucd.parkabled.model.ParkingLocation) throws java.lang.Exception, parameters=[Parameter [type=class java.io.InputStream, source=file, defaultValue=null], Parameter [type=class com.ucd.parkabled.model.ParkingLocation, source=parkingLocation, defaultValue=null]], responseType=class javax.ws.rs.core.Response}, nameBindings=[]}']
    any idea where to look at?
    John McClean
    @johnmcclean
    Is ReportRest an annotation or Rest Resource Class ?
    because for Rest Resources you can just annotatie them @Rest and they will be picked up automatically with no config
    the configuration is for registering your own Annotations
    Marco Castigliego
    @marcocast
    ReportRest is a normal Rest
    resource calss
    class
    it works perfectly if methods consume application/json
    it does n t work if methods consume MULTIPART_FORM_DATA
    in Jersey there is a specific lib to use in case of multipart
    i m investigating and in case micro server will need a change i ll do it
    John McClean
    @johnmcclean
    excellent - thanks Marco! I think Ciaran Treanor may have done something around this, will check my mails
    Marco Castigliego
    @marcocast
    ah ok
    let me know so
    btw i implented oauth token authentication with micro server and stormpath. Works like a charm :)
    John McClean
    @johnmcclean
    cool :)
    yeah, he has done it in his own service. We should add a wiki entry
    need to add jersey multi-part to the classpath
    compile 'org.glassfish.jersey.media:jersey-media-multipart:2.17'
    then create your app something like this
        new MicroserverApp(ConfigurableModule
    
                                          .builder()
    
                                          .context(“multipart-app")
    
                                          .defaultResources(Arrays.asList(MultiPartFeature.class))
    
                                          .build()).run();
    John McClean
    @johnmcclean
    so it looks like you are doing something similar - it’s probably down to the dependencies
    let me know if that works, and we can add a wiki entry
    Marco Castigliego
    @marcocast
    I saw that
    but it does not work
    John McClean
    @johnmcclean
    with this dependency? compile 'org.glassfish.jersey.media:jersey-media-multipart:2.17'
    Marco Castigliego
    @marcocast
    yes
    that dependency is already in the micro-server
    John McClean
    @johnmcclean
    what error do you get ?
    Marco Castigliego
    @marcocast
    basically if i add the .defaultResources(Arrays.asList(MultiPartFeature.class))
    then
    multipart works, but all the other json normal rest method are not supported anymore
    If i send a json request to a previous working rest service, then i get : Status
    415 Unsupported Media Type
    John McClean
    @johnmcclean
    just on that resource - or on all other resources ?
    Marco Castigliego
    @marcocast
    all
    John McClean
    @johnmcclean
    wow - let’s try Stackoverflow
    Marco Castigliego
    @marcocast
    it looks like it is overriding all the other default classes
    John McClean
    @johnmcclean
    oh hold on. let me check the code
    it should still add the other resources looking at the code. You can try adding them in manually to confirm, if you like. They are :
    JacksonFeature.class,
    ApiListingResourceJSON.class,JerseyApiDeclarationProvider.class,
    JerseyResourceListingProvider.class
    Marco Castigliego
    @marcocast
    ok let me try
    Marco Castigliego
    @marcocast
    works now
    let me test the multipart as well
    John McClean
    @johnmcclean
    ok cool - what version of Microserver are you using ?
    Marco Castigliego
    @marcocast
    59
    Ciaran Treanor
    @ciarant
    Hey all - you get your Multipart stuff working ok?
    John McClean
    @johnmcclean
    looks like there was some sort of conflict between multipart and non-multipart