java.lang.NullPointerException

        at com.google.inject.persist.jpa.JpaPersistService.begin(
JpaPersistService.java:77)

        at com.google.inject.persist.jpa.JpaLocalTxnInterceptor.invoke(
JpaLocalTxnInterceptor.java:53)

        at com.eckertcaine.bridge.guice.BridgeGuiceServletContextListener.
contextInitialized(AppGuiceServletContextListener.java:60)

        at org.mortbay.jetty.handler.ContextHandler.startContext(
ContextHandler.java:548)

        at org.mortbay.jetty.servlet.Context.startContext(Context.java:136)

        at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext
.java:1234)

        at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.
java:517)

        at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java
:460)

        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.
java:50)

        at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.
java:130)

        at org.mortbay.jetty.Server.doStart(Server.java:222)

        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.
java:50)

        at com.eckertcaine.bridge.Start.start(Start.java:126)

        at com.eckertcaine.bridge.Start.main(Start.java:194)

Follows my servlet context listener:

package com.app.guice;



import javax.servlet.ServletContext;

import javax.servlet.ServletContextEvent;



import org.mortbay.jetty.Server;



import com.app.setup.AppLifeCycle;

import com.google.inject.Guice;

import com.google.inject.Injector;

import com.google.inject.Provides;

import com.google.inject.Singleton;

import com.google.inject.servlet.GuiceServletContextListener;



public class AppGuiceServletContextListener extends 
GuiceServletContextListener {



        private AppLifeCycle appLifeCycle;



        private Server server;



        private ServletContext servletContext;



        private Injector injector;



        public AppGuiceServletContextListener(Server server) {

                super();

                this.server = server;

        }



        @Override

        public void contextDestroyed(ServletContextEvent ctx) {

                super.contextDestroyed(ctx);

                if (appLifeCycle != null) {

                        appLifeCycle.destroy();

                }

        }



        @Override

        public void contextInitialized(ServletContextEvent 
servletContextEvent) {

                servletContext = servletContextEvent.getServletContext();

                super.contextInitialized(servletContextEvent);



                appLifeCycle = injector.getInstance(AppLifeCycle.class);

                appLifeCycle.init(servletContext);

        }



        @Provides

        @Singleton

        Server provideServer(Injector injector) {

                final Server server = this.server;

                injector.injectMembers(server);

                return server;

        }



        @Override

        protected Injector getInjector() {

                if (injector == null)

                        injector = Guice.createInjector(new MainModule(
String.format("%s/WEB-INF/app", servletContext.getRealPath("/")), 
servletContext));

                return injector;

        }

}

the line that points the error on the context listener is appLifeCycle.init(
servletContext);


On Friday, December 1, 2017 at 7:44:45 PM UTC-2, scl wrote:
>
> Can you please give more of the stack trace (all of it).
> Because the cause of this NPE is different depending on where the call 
> comes from.
>
> On 01.12.2017 20:27, Diogo Luzzardi de Carvalho wrote:
>
> The following exception is ocorring for me: 
>
> java.lang.NullPointerException
>
>         at com.google.inject.persist.jpa.JpaPersistService.begin(
> JpaPersistService.java:77)
>
>         at com.google.inject.persist.jpa.JpaLocalTxnInterceptor.invoke(
> JpaLocalTxnInterceptor.java:53)
>
> Follows my persistence.xml:
>
> <?xml version="1.0" encoding="UTF-8"?>
>
> <persistence xmlns="http://java.sun.com/xml/ns/persistence"; 
> <http://www.google.com/url?q=http%3A%2F%2Fjava.sun.com%2Fxml%2Fns%2Fpersistence&sa=D&sntz=1&usg=AFQjCNFVn-Ui0kpX_x57k_rRpCqNI5wg3A>
>
>         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
> <http://www.w3.org/2001/XMLSchema-instance>
>
>         xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
>
>         http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd";
>
>         version="1.0">
>
>
>
>         <!-- A JPA Persistence Unit -->
>
>         <persistence-unit name="persistence.unit"
>
>                 transaction-type="RESOURCE_LOCAL">
>
>                 <provider>org.hibernate.jpa.HibernatePersistenceProvider</
> provider>
>
>
>
>                 <!-- JPA entities must be registered here -->
>
>                 <!--<class>com.wideplay.warp.jpa.JpaTestEntity</class> -->
>
>         </persistence-unit>
>
>
>
> </persistence>
>
> follows the configuration code:
>
> persistModule = new JpaPersistModule(PERSISTENCE_UNIT_NAME);
>
> install(persistModule);
>
> bind(org.hibernate.Session.class).toProvider(new SessionProvider());
>
> filter("/*").through(PersistFilter.class);
>
>
> can anyone point me what I'm doing wrong?
>
> regards
> Diogo
> -- 
> You received this message because you are subscribed to the Google Groups 
> "google-guice" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected] <javascript:>.
> To post to this group, send email to [email protected] 
> <javascript:>.
> Visit this group at https://groups.google.com/group/google-guice.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/google-guice/fd020b11-2a91-4656-9c49-6f5b0fef744e%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/google-guice/fd020b11-2a91-4656-9c49-6f5b0fef744e%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"google-guice" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/google-guice.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-guice/5e2af91c-af64-4b65-8f72-bf4e74499ff1%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to