[ https://issues.apache.org/jira/browse/WICKET-2416?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Igor Vaynberg resolved WICKET-2416. ----------------------------------- Resolution: Cannot Reproduce Assignee: Igor Vaynberg so i read the reply from the glassfish guy. he didnt take the time to look at this issue nor understand what the problem is. his base premise - that wicket creates a proxy to an ejb reference injected by glassfish is wrong, and so the rest of it that follows is also wrong. wicket performs the lookup itself, never uses a reference injected by anything. anyways, i was going to write up a long reply to this but figured that it would be more helpful if i can create a simple test case for him to see what is wrong. so, i installed netbeans and dropped the attached testcase. unfortunately, it did not work out of the box as promised with a bunch of build errors that had to do something with missing libs, whatever. so i created a new project in netbeans and dropped the sources from the testcase project. after fiddling with the libs and getting the classpath setup i finally launched the project. i clicked around a bunch but was never able to reproduce the error. attached is my netbeans project (App.rar) i used. following is the output from glassfish, look after the wicket development mode warning. feel free to reopen the issue when you have steps for me to reproduce the error. ----------------------------------------------------------------------------------------------------------------------------------------------- Oct 6, 2009 4:38:35 PM com.sun.enterprise.admin.servermgmt.launch.ASLauncher buildCommand INFO: C:/dev/jdk6\bin\java -Dcom.sun.aas.instanceRoot=C:/dev/sun/glassfish2/domains/domain1 -Dcom.sun.aas.ClassPathPrefix= -Dcom.sun.aas.ClassPathSuffix= -Dcom.sun.aas.ServerClassPath= -Dcom.sun.aas.classloader.appserverChainJars.ee= -Dcom.sun.aas.classloader.appserverChainJars=admin-cli.jar,admin-cli-ee.jar,j2ee-svc.jar -Dcom.sun.aas.classloader.excludesList=admin-cli.jar,appserv-upgrade.jar,sun-appserv-ant.jar -Dcom.sun.aas.classloader.optionalOverrideableChain.ee= -Dcom.sun.aas.classloader.optionalOverrideableChain=webservices-rt.jar,webservices-tools.jar -Dcom.sun.aas.classloader.serverClassPath.ee=Does not exist/lib/hadbjdbc4.jar,C:/dev/sun/glassfish2/lib/SUNWjdmk/5.1/lib/jdmkrt.jar,Does not exist/lib/dbstate.jar,Does not exist/lib/hadbm.jar,Does not exist/lib/hadbmgt.jar,C:/dev/sun/glassfish2/lib/SUNWmfwk/lib/mfwk_instrum_tk.jar -Dcom.sun.aas.classloader.serverClassPath=C:/dev/sun/glassfish2/lib/install/applications/jmsra/imqjmsra.jar,C:/dev/sun/glassfish2/imq/lib/jaxm-api.jar,C:/dev/sun/glassfish2/imq/lib/fscontext.jar,C:/dev/sun/glassfish2/imq/lib/imqbroker.jar,C:/dev/sun/glassfish2/imq/lib/imqjmx.jar,C:/dev/sun/glassfish2/lib/ant/lib/ant.jar,C:/dev/sun/glassfish2/lib/SUNWjdmk/5.1/lib/jdmkrt.jar -Dcom.sun.aas.classloader.sharedChainJars.ee=appserv-se.jar,appserv-ee.jar,jesmf-plugin.jar,Does not exist/lib/dbstate.jar,Does not exist/lib/hadbjdbc4.jar,jgroups-all.jar,C:/dev/sun/glassfish2/lib/SUNWmfwk/lib/mfwk_instrum_tk.jar -Dcom.sun.aas.classloader.sharedChainJars=javaee.jar,C:/dev/jdk6/lib/tools.jar,install/applications/jmsra/imqjmsra.jar,com-sun-commons-launcher.jar,com-sun-commons-logging.jar,C:/dev/sun/glassfish2/imq/lib/jaxm-api.jar,C:/dev/sun/glassfish2/imq/lib/fscontext.jar,C:/dev/sun/glassfish2/imq/lib/imqbroker.jar,C:/dev/sun/glassfish2/imq/lib/imqjmx.jar,C:/dev/sun/glassfish2/imq/lib/imqxm.jar,webservices-rt.jar,webservices-tools.jar,mail.jar,appserv-jstl.jar,jmxremote_optional.jar,C:/dev/sun/glassfish2/lib/SUNWjdmk/5.1/lib/jdmkrt.jar,activation.jar,appserv-rt.jar,appserv-admin.jar,appserv-cmp.jar,C:/dev/sun/glassfish2/updatecenter/lib/updatecenter.jar,C:/dev/sun/glassfish2/jbi/lib/jbi.jar,C:/dev/sun/glassfish2/imq/lib/imqjmx.jar,C:/dev/sun/glassfish2/lib/ant/lib/ant.jar,dbschema.jar -Dcom.sun.aas.configName=server-config -Dcom.sun.aas.configRoot=C:/dev/sun/glassfish2/config -Dcom.sun.aas.defaultLogFile=C:/dev/sun/glassfish2/domains/domain1/logs/server.log -Dcom.sun.aas.domainName=domain1 -Dcom.sun.aas.installRoot=C:/dev/sun/glassfish2 -Dcom.sun.aas.instanceName=server -Dcom.sun.aas.processLauncher=SE -Dcom.sun.aas.promptForIdentity=true -Dcom.sun.enterprise.config.config_environment_factory_class=com.sun.enterprise.config.serverbeans.AppserverConfigEnvironmentFactory -Dcom.sun.enterprise.overrideablejavaxpackages=javax.help,javax.portlet -Dcom.sun.enterprise.taglibs=appserv-jstl.jar,jsf-impl.jar -Dcom.sun.enterprise.taglisteners=jsf-impl.jar -Dcom.sun.updatecenter.home=C:/dev/sun/glassfish2/updatecenter -Ddomain.name=domain1 -Djava.endorsed.dirs=C:/dev/sun/glassfish2/lib/endorsed -Djava.ext.dirs=C:/dev/jdk6/lib/ext;C:/dev/jdk6/jre/lib/ext;C:/dev/sun/glassfish2/domains/domain1/lib/ext;C:/dev/sun/glassfish2/javadb/lib -Djava.library.path=C:\dev\sun\glassfish2\lib;C:\dev\sun\glassfish2\lib;C:\dev\sun\glassfish2\bin;C:\dev\sun\glassfish2\bin -Djava.security.auth.login.config=C:/dev/sun/glassfish2/domains/domain1/config/login.conf -Djava.security.policy=C:/dev/sun/glassfish2/domains/domain1/config/server.policy -Djava.util.logging.manager=com.sun.enterprise.server.logging.ServerLogManager -Djavax.management.builder.initial=com.sun.enterprise.admin.server.core.jmx.AppServerMBeanServerBuilder -Djavax.net.ssl.keyStore=C:/dev/sun/glassfish2/domains/domain1/config/keystore.jks -Djavax.net.ssl.trustStore=C:/dev/sun/glassfish2/domains/domain1/config/cacerts.jks -Djdbc.drivers=org.apache.derby.jdbc.ClientDriver -Djmx.invoke.getters=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -client -XX:+UnlockDiagnosticVMOptions -XX:MaxPermSize=192m -Xmx512m -XX:NewRatio=2 -XX:+LogVMOutput -XX:LogFile=C:/dev/sun/glassfish2/domains/domain1/logs/jvm.log -cp C:/dev/sun/glassfish2/lib/jhall.jar;C:\dev\sun\glassfish2\lib\appserv-launch.jar com.sun.enterprise.server.PELaunch start CORE5076: Using [Java HotSpot(TM) Client VM, Version 1.6.0_07] from [Sun Microsystems Inc.] SEC1002: Security Manager is OFF. Using MQ RA for Broker lifecycle control SEC1143: Loading policy provider com.sun.enterprise.security.provider.PolicyWrapper. WEB0114: SSO is disabled in virtual server [server] WEB0114: SSO is disabled in virtual server [__asadmin] REgistering Custom ContextConfig REgistering Custom Context JTS5014: Recoverable JTS instance, serverId = [3700] ADM1079: Initialization of AMX MBeans started ADM1504: Here is the JMXServiceURL for the Standard JMXConnectorServer: [service:jmx:rmi:///jndi/rmi://10.64.80.175:8686/jmxrmi]. This is where the remote administrative clients should connect using the standard JMX connectors ADM1506: Status of Standard JMX Connector: Active = [true] JMS Service Connection URL is :mq://eve:7676/ MQJMSRA_RA1101: SJSMQ JMS Resource Adapter starting... MQJMSRA_EB1101: EMBEDDED broker started with code =0 MQJMSRA_RA1101: SJSMQ JMSRA Started:DIRECT LDR5010: All ejb(s) of [MEjbApp] loaded successfully! EJB5109:EJB Timer Service started successfully for datasource [jdbc/__TimerPool] LDR5010: All ejb(s) of [__ejb_container_timer_app] loaded successfully! loader.error_while_loading_app_desc java.io.FileNotFoundException: C:/dev/netbeans-ws/App/dist/gfdeploy at com.sun.enterprise.deployment.deploy.shared.FileArchive.open(FileArchive.java:79) at com.sun.enterprise.instance.AppsManager.getAppDescriptor(AppsManager.java:356) at com.sun.enterprise.server.ApplicationLoader.<init>(ApplicationLoader.java:112) at com.sun.enterprise.server.TomcatApplicationLoader.<init>(TomcatApplicationLoader.java:88) at com.sun.enterprise.server.ExtendedApplicationLoader.<init>(ExtendedApplicationLoader.java:94) at com.sun.enterprise.server.pluggable.ExtendedApplicationLoaderFactory.createApplicationLoader(ExtendedApplicationLoaderFactory.java:63) at com.sun.enterprise.server.ApplicationManager.getLoader(ApplicationManager.java:166) at com.sun.enterprise.server.AbstractManager.load(AbstractManager.java:202) at com.sun.enterprise.server.ApplicationLifecycle.onStartup(ApplicationLifecycle.java:224) at com.sun.enterprise.server.ApplicationServer.onStartup(ApplicationServer.java:446) at com.sun.enterprise.server.ondemand.OnDemandServer.onStartup(OnDemandServer.java:134) at com.sun.enterprise.server.PEMain.run(PEMain.java:409) at com.sun.enterprise.server.PEMain.main(PEMain.java:336) 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.enterprise.server.PELaunch.main(PELaunch.java:415) ERROR while loading application App LDR5006: Failed to load deployment descriptor com.sun.enterprise.config.ConfigException: java.io.FileNotFoundException: C:/dev/netbeans-ws/App/dist/gfdeploy at com.sun.enterprise.instance.AppsManager.getAppDescriptor(AppsManager.java:389) at com.sun.enterprise.server.ApplicationLoader.<init>(ApplicationLoader.java:112) at com.sun.enterprise.server.TomcatApplicationLoader.<init>(TomcatApplicationLoader.java:88) at com.sun.enterprise.server.ExtendedApplicationLoader.<init>(ExtendedApplicationLoader.java:94) at com.sun.enterprise.server.pluggable.ExtendedApplicationLoaderFactory.createApplicationLoader(ExtendedApplicationLoaderFactory.java:63) at com.sun.enterprise.server.ApplicationManager.getLoader(ApplicationManager.java:166) at com.sun.enterprise.server.AbstractManager.load(AbstractManager.java:202) at com.sun.enterprise.server.ApplicationLifecycle.onStartup(ApplicationLifecycle.java:224) at com.sun.enterprise.server.ApplicationServer.onStartup(ApplicationServer.java:446) at com.sun.enterprise.server.ondemand.OnDemandServer.onStartup(OnDemandServer.java:134) at com.sun.enterprise.server.PEMain.run(PEMain.java:409) at com.sun.enterprise.server.PEMain.main(PEMain.java:336) 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.enterprise.server.PELaunch.main(PELaunch.java:415) Caused by: java.io.FileNotFoundException: C:/dev/netbeans-ws/App/dist/gfdeploy at com.sun.enterprise.deployment.deploy.shared.FileArchive.open(FileArchive.java:79) at com.sun.enterprise.instance.AppsManager.getAppDescriptor(AppsManager.java:356) ... 16 more CORE5016: Unexpected error occurred while loading applications javax.management.MBeanException at com.sun.enterprise.server.ApplicationLoader.createRootMBean(ApplicationLoader.java:295) at com.sun.enterprise.server.AbstractManager.load(AbstractManager.java:205) at com.sun.enterprise.server.ApplicationLifecycle.onStartup(ApplicationLifecycle.java:224) at com.sun.enterprise.server.ApplicationServer.onStartup(ApplicationServer.java:446) at com.sun.enterprise.server.ondemand.OnDemandServer.onStartup(OnDemandServer.java:134) at com.sun.enterprise.server.PEMain.run(PEMain.java:409) at com.sun.enterprise.server.PEMain.main(PEMain.java:336) 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.enterprise.server.PELaunch.main(PELaunch.java:415) Caused by: java.lang.NullPointerException at com.sun.enterprise.management.util.J2EEManagementObjectManager.createAppMBean(J2EEManagementObjectManager.java:547) at com.sun.enterprise.server.ApplicationLoader.createRootMBean(ApplicationLoader.java:284) ... 11 more WEB0302: Starting Sun-Java-System/Application-Server. JBIFW0010: JBI framework ready to accept requests. WEB0712: Starting Sun-Java-System/Application-Server HTTP/1.1 on 8080 WEB0712: Starting Sun-Java-System/Application-Server HTTP/1.1 on 8181 WEB0712: Starting Sun-Java-System/Application-Server HTTP/1.1 on 4848 SMGT0007: Self Management Rules service is enabled Application server startup complete. deployed with moduleid = App LDR5010: All ejb(s) of [App] loaded successfully! ******************************************************************** *** WARNING: Wicket is running in DEVELOPMENT mode. *** *** ^^^^^^^^^^^ *** *** Do NOT deploy to your live server(s) without changing this. *** *** See Application#getConfigurationType() for more information. *** ******************************************************************** going to page 3 page 3 - switching to view mode page 3 - going to page 2 via referece going to page 3 page 3 - switching to view mode page 3 - going to page 2 via referece going to page 3 page 3 - switching to view mode page 3 - going to page 2 via referece page 2 - incrementing counter and calling method on ejb bean page 2 - incrementing counter and calling method on ejb bean page 2 - incrementing counter and calling method on ejb bean page 2 - incrementing counter and calling method on ejb bean page 2 - incrementing counter and calling method on ejb bean page 2 - incrementing counter and calling method on ejb bean page 2 - incrementing counter and calling method on ejb bean WEB0303: Stopping Sun-Java-System/Application-Server. WEB0713: Stopping Sun-Java-System/Application-Server HTTP/1.1 on 8080 WEB0713: Stopping Sun-Java-System/Application-Server HTTP/1.1 on 8181 WEB0713: Stopping Sun-Java-System/Application-Server HTTP/1.1 on 4848 classLoader = WebappClassLoader delegate: false repositories: ----------> Parent Classloader: EJBClassLoader : urlSet = [] doneCalled = false Parent -> java.net.urlclassloa...@107bd0d SharedSecrets.getJavaNetAccess()=java.net.urlclassloade...@f9968f classLoader = WebappClassLoader delegate: true repositories: /WEB-INF/classes/ ----------> Parent Classloader: EJBClassLoader : urlSet = [] doneCalled = false Parent -> java.net.urlclassloa...@107bd0d SharedSecrets.getJavaNetAccess()=java.net.urlclassloade...@f9968f classLoader = WebappClassLoader delegate: true repositories: ----------> Parent Classloader: EJBClassLoader : urlSet = [] doneCalled = false Parent -> java.net.urlclassloa...@107bd0d SharedSecrets.getJavaNetAccess()=java.net.urlclassloade...@f9968f classLoader = WebappClassLoader delegate: true repositories: ----------> Parent Classloader: EJBClassLoader : urlSet = [] doneCalled = false Parent -> java.net.urlclassloa...@107bd0d SharedSecrets.getJavaNetAccess()=java.net.urlclassloade...@f9968f classLoader = WebappClassLoader delegate: true repositories: /WEB-INF/classes/ ----------> Parent Classloader: EJBClassLoader : urlSet = [URLEntry : file:/C:/dev/netbeans-ws/App/dist/gfdeploy/cglib-nodep-2.1_3.jar, URLEntry : file:/C:/dev/netbeans-ws/App/dist/gfdeploy/log4j-1.2.13.jar, URLEntry : file:/C:/dev/netbeans-ws/App/dist/gfdeploy/slf4j-api-1.4.2.jar, URLEntry : file:/C:/dev/netbeans-ws/App/dist/gfdeploy/slf4j-log4j12-1.4.2.jar, URLEntry : file:/C:/dev/netbeans-ws/App/dist/gfdeploy/wicket-1.4.1.jar, URLEntry : file:/C:/dev/netbeans-ws/App/dist/gfdeploy/wicket-contrib-javaee-1.4-SNAPSHOT.jar, URLEntry : file:/C:/dev/netbeans-ws/App/dist/gfdeploy/wicket-ioc-1.4.1.jar, URLEntry : file:/C:/dev/netbeans-ws/App/dist/gfdeploy/App-ejb_jar/, URLEntry : file:/C:/dev/netbeans-ws/App/dist/gfdeploy/App-ejb.jar, URLEntry : file:/C:/dev/netbeans-ws/App/dist/gfdeploy/App-war_war/WEB-INF/classes/, URLEntry : file:/C:/dev/sun/glassfish2/domains/domain1/generated/ejb/j2ee-apps/App/] doneCalled = false Parent -> EJBClassLoader : urlSet = [] doneCalled = false Parent -> java.net.urlclassloa...@107bd0d SharedSecrets.getJavaNetAccess()=java.net.urlclassloade...@f9968f classLoader = WebappClassLoader delegate: true repositories: ----------> Parent Classloader: EJBClassLoader : urlSet = [URLEntry : file:/C:/dev/sun/glassfish2/domains/domain1/generated/ejb/j2ee-apps/__JWSappclients/] doneCalled = false Parent -> EJBClassLoader : urlSet = [] doneCalled = false Parent -> java.net.urlclassloa...@107bd0d SharedSecrets.getJavaNetAccess()=java.net.urlclassloade...@f9968f CORE5051: Shutting down all J2EE applications ... EJB5122:EJB Timer Service shutdown at [2009/10/06 16:40:03] CORE5068 : Stopping all J2EE Connector 1.5 Compliant resource adapters ... MQJMSRA_RA1101: SJSMQ JMSRA stopping... MQJMSRA_RA1101: SJSMQ JMSRA stopped. RAR7094: jmsra shutdown successful. RAR7094: __xa shutdown successful. CORE 5061 : Resource adapters Stop() Complete CORE5052: Application shutdown complete. [AutoDeploy] Disabling AutoDeployment service. JBIFW0042: JBI framework termination complete. > Exception with EJB Session Bean > ------------------------------- > > Key: WICKET-2416 > URL: https://issues.apache.org/jira/browse/WICKET-2416 > Project: Wicket > Issue Type: Bug > Components: wicket > Affects Versions: 1.4.1 > Environment: Java 1.6. > Wicket Java EE 1.1 > Reporter: bernard > Assignee: Igor Vaynberg > Attachments: testcase.zip > > > The attached testcase gets an exception > java.io.InvalidClassException: test.session.TestSessionLocal; could not > resolve class [test.session.TestSessionLocal] when deserializing proxy > at > org.apache.wicket.proxy.LazyInitProxyFactory$ProxyReplacement.readResolve(LazyInitProxyFactory.java:236) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > when the user clicks through it, starting from index.html. > I can't really make any progress without a fix, or without knowing what I am > doing wrong to get this. > The testcase will work out of the box with NetBeans 6.7.1 and Server: > GlassFish V2 which is bundled with it. > I don't know what really causes this. It is interesting that the tescase runs > ok when > two lines are removed from Page2.java. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.