Announcement

Collapse
No announcement yet.

EJB Stateless Bean ist immer null im REST WebService

Collapse
This topic is closed.
X
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • EJB Stateless Bean ist immer null im REST WebService

    Hallo Community,

    ich hoffe ihr könnt mir bei folgendem Problem helfen:
    Ich habe ein WebProjekt mit Eclipse als dynamisches WebProjekt erstellt und verwende als Application Server den Glassfish3. Daneben nutze ich EJB 3.0 um eine stateless bean als Facade (@stateless Annotation) zu erzeugen, welche die folgende Business Logik implementiert:
    Code:
    @Stateless
    public class Facade {   
    
    public void test(){     
    System.out.println("test hat geklappt!!");
    }   
    }
    Zusätzlich verwende ich eine RESTRessource um den REST WebService anzubieten welcher meine EJB (@EJB Annotation) verwendet:
    Code:
    @RequestScoped
    @Path("/prescriptions")
    public class Ressource {
    
        @EJB
        private Facade facade;
    
        public Ressource() {
            super();
        }
    
        @GET
        @Path("/user/{userid}")
        @Produces(MediaType.APPLICATION_JSON)
        public void getUser(@PathParam("userid") String userid) {
    
            facade.test();
    
        }   
    
    }
    Obwohl ich in den REST-WS komme und aufrufen kann, ist meine EJB immer null und ich finde keinen Grund wieso.

    Ich wäre euch sehr dankbar, wenn ihr mir helfen könntet. Falls ihr mehr Informationen benötigt, sagt mir einfach bescheid.

    Vielen Dank im Voraus für eure Hilfe,
    Florian

    PS: Dies ist die Fehlermeldung, die ich immer bekomme:

    Code:
    INFO: Portable JNDI names for EJB Facade : [java:global/TestProject/Facade,java:global/TestProject/Facade!webservices.Facade]   
    INFO: Portable JNDI names for EJB Facade : [java:global/TestProject/Facade, java:global/TestProject/Facade!webservices.Facade]
    INFO: Scanning for root resource and provider classes in the packages:
    webservices
    INFO: Root resource classes found:
    class webservices.Ressource
    INFO: No provider classes found.
    INFO: Initiating Jersey application, version 'Jersey: 1.5 01/14/2011 12:36 PM'
    
    SCHWERWIEGEND: The RuntimeException could not be mapped to a response, re-throwing to the HTTP container    
    java.lang.NullPointerException
    
    at webservices.Ressource.getUser(Ressource.java:40)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$VoidOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:150)
    at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:70)
    at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:279)
    at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:136)
    at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:86)
    at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:136)
    at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:74)
    at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1347)
    at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1279)
    at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1229)
    at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1219)
    at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:419)
    at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:537)
    at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:699)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
    at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1534)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:281)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
    at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98)
    at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)
    at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:326)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:227)
    at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:170)
    at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:822)
    at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:719)
    at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1013)
    at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
    at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
    at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
    at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
    at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
    at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
    at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
    at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
    at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
    at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
    at java.lang.Thread.run(Thread.java:662)

  • #2
    Crosspost

    http://stackoverflow.com/questions/8...3-ejb3-statele

    geschlossen
    Christian

    Comment

    Working...
    X