I've done some more probing of my problem which I first posted about yesterday or the day before (in which, using JBoss 2.4, I can't get local interfaces to work, but I can get remote ones to work).

The exception being thrown by Jboss when I try to deploy, is a NullPointerException in line 103 of org.jboss.ejb.plugins.jaws.jdbc.JDBCFindEntitiesCommand. The line of code reads as follows:

      // Make commands for any autogenerated finders required

      Method[] homeMethods = factory.getContainer().getHomeClass().getMethods();

After adding some additional logging to this Jboss class, I have determined that the getHomeClass() call is returning "null", which is causing the subsequent call to getMethods() to throw NPE.

I don't know if this is a bug in Jboss 2.4, or a problem with how xdoclet is producing code or xml.

One thing for sure is that it's not really a "JDBC problem" per se; instead it appears to be in the auto-generation of finder methods.

Ideas would be appreciated!

Thanks,

Bryan

Dmitri Colebatch wrote:
[EMAIL PROTECTED]">
Bryan,

yes, the jaws thing is indeed weird. could you post the ejb-jar, jboss
and jaws xml files? Have you had a look over the code? how's it look?

cheers
dim


On Wed, 5 Sep 2001, Bryan Field-Elliot wrote:

Per your instructions below:

Dmitri Colebatch wrote:

On Mon, 3 Sep 2001, Bryan Field-Elliot wrote:

This evening I will try the latest CVS and post my results (local 
interfaces, without CMP 2.0).

I haven't actually tried using the local interface yet, but have done
everything up to that point (including deploy with local interfaces) and
all is good, so it should be smooth sailing.

I am still having trouble getting jboss to correctly verify or deploy my 
beans when I try local interfaces.

To recap:

RedHat Linux 7.1
Sun JDK 1.3.0-02
JBoss 2.4.0 + Tomcat final release
xdoclet checked out from CVS just a few minutes ago

My build.xml has this task defined:
<ejbdoclet
ejbspec="2.0"
sourcepath="${gen}"
destdir="${gen}"
packagenames="com.myapp.ejb.*"
excludedtags="@version,@author">

<classpath refid="commonPath"/>

<dataobject/>
<remoteinterface/>
<localinterface/>
<homeinterface/>
<localhomeinterface/>
<entitypk/>
<entitycmp/>
<session/>
<deploymentdescriptor destdir="${xml}"/>
<jboss typemapping="PostgreSQL" datasource="java:/myapp"
destdir="${xml}"/>
</ejbdoclet>

My bean class starts like this:

/**
* Note Bean
*
* @ejb:bean type="CMP" cmp-version="1.x" name="myapp/Note"
jndi-name="ejb/myapp/Note" view-type="local"
* @ejb:transaction type="Required"
*
* @ejb:finder signature="Collection findAll()"
*
* @jboss:table-name table-name="notes"
* @jboss:create-table create="true"
* @jboss:remove-table remove="false"
* @jboss:tuned-updates tune="true"
* @jboss:read-only read-only="false"
*
*/
public abstract class NoteBean implements EntityBean

Each remote method looks like this:

/**
* @ejb:interface-method view-type="local"
* @ejb:persistent-field
*/
public abstract String getURL();

Whenever I try to access the loc al interface'd bean, I get the error
"env not bound" (not loaded and JDNI-bound, evidently).

When I switch to remote interfaces, everything works fine.

Lastly, my jboss console output look reads as follows (long).

It is suspicious to me that the errors I am getting are within
JAWS/JDBC. These parameters remain unchanged whether I try the local or
remote interface route. Still I point it out in case it ring's anyone's
bell.

Thanks again for all the help,

Bryan

jboss console log:

[Container factory] Deploying:file:/usr/java/JBoss-2.4.0_Tomcat-3.2.3/jboss/tmp/deploy/Default/myapp-ejb.jar
[Verifier] Verifying file:/usr/java/JBoss-2.4.0_Tomcat-3.2.3/jboss/tmp/deplo y/Default/myapp-ejb.jar/ejb1003.jar
[Container factory] Deploying myapp/Note
[Container factory] Deploying myapp/User
[Container factory] Deploying myapp/Topic
[Container factory] Deploying myapp/ClientSession
[JAWS] Table 'users' already exists
[Container factory] java.lang.NullPointerException
[Container factory] at org.jboss.ejb.plugins.jaws.jdbc.JDBCFindEntitiesCommand.<init>(JDBCFindEntitiesCommand.java:103)
[Container factory] at org.jboss.ejb.plugins.jaws.jdbc.JDBCCommandFactory.createFindEntitiesCommand(JDBCCommandFactory.java:246)
[Container factory] at org.jboss.ejb.plugins.jaws.jdbc.JDBCFindEntityCommand.<init>(JDBCFindEntityCommand.java:46)
[Container factory] at org.jboss.ejb.plugins.jaws.jdbc.JDBCCommandFactory.createFindEntityCommand(JDBCCommandFactory.java:235)
[Container factory] at org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.init(JAWSPersistenceManager.java:90)
[Container factory] at org.jboss.e jb.plugins.CMPPersistenceManager.init(CMPPersistenceManager.java:110)
[Container factory] at org.jboss.ejb.EntityContainer.init(EntityContainer.java:221)
[Container factory] at org.jboss.ejb.Application.init(Application.java:202)
[Container factory] at org.jboss.ejb.ContainerFactory.deploy(ContainerFactory.java:372)
[Container factory] at org.jboss.ejb.ContainerFactory.deploy(ContainerFactory.java:304)
[Container factory] at java.lang.reflect.Method.invoke(Native Method)
[Container factory] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
[Container factory] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
[Container factory] at org.jboss.deployment.J2eeDeployer.startModules(J2eeDeployer.java:486)
[Container factory] at org.jboss.deployment.J2eeDeployer.startApplication(J2eeDeployer.java:464)
[Container factory] at org.jboss.deployment.J2eeDeployer.deploy(J2eeDeployer.java:208)
[C ontainer factory] at java.lang.reflect.Method.invoke(Native Method)
[Container factory] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
[Container factory] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
[Container factory] at org.jboss.ejb.AutoDeployer.deploy(AutoDeployer.java:379)
[Container factory] at org.jboss.ejb.AutoDeployer.run(AutoDeployer.java:217)
[Container factory] at org.jboss.ejb.AutoDeployer.startService(AutoDeployer.java:353)
[Container factory] at org.jboss.util.ServiceMBeanSupport.start(ServiceMBeanSupport.java:107)
[Container factory] at java.lang.reflect.Method.invoke(Native Method)
[Container factory] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
[Container factory] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
[Container factory] at org.jboss.configuration.ConfigurationService$ServiceProxy.invoke(Co nfigurationService.java:836)
[Container factory] at $Proxy0.start(Unknown Source)
[Container factory] at org.jboss.util.ServiceControl.start(ServiceControl.java:81)
[Container factory] at java.lang.reflect.Method.invoke(Native Method)
[Container factory] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
[Container factory] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
[Container factory] at org.jboss.Main.<init>(Main.java:210)
[Container factory] at org.jboss.Main$1.run(Main.java:116)
[Container factory] at java.security.AccessController.doPrivileged(Native Method)
[Container factory] at org.jboss.Main.main(Main.java:112)
[Container factory] java.lang.NullPointerException
[Container factory] at org.jboss.ejb.plugins.jaws.jdbc.JDBCFindEntitiesCommand.<init>(JDBCFindEntitiesCommand.java:103)
[Container factory] at org.jboss.ejb.plugins.jaws.jdbc.JDBCCommandFactory. createFindEntitiesCommand(JDBCCommandFactory.java:246)
[Container factory] at org.jboss.ejb.plugins.jaws.jdbc.JDBCFindEntityCommand.<init>(JDBCFindEntityCommand.java:46)
[Container factory] at org.jboss.ejb.plugins.jaws.jdbc.JDBCCommandFactory.createFindEntityCommand(JDBCCommandFactory.java:235)
[Container factory] at org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.init(JAWSPersistenceManager.java:90)
[Container factory] at org.jboss.ejb.plugins.CMPPersistenceManager.init(CMPPersistenceManager.java:110)
[Container factory] at org.jboss.ejb.EntityContainer.init(EntityContainer.java:221)
[Container factory] at org.jboss.ejb.Application.init(Application.java:202)
[Container factory] at org.jboss.ejb.ContainerFactory.deploy(ContainerFactory.java:372)
[Container factory] at org.jboss.ejb.ContainerFactory.deploy(ContainerFactory.java:304)
[Container factory] at java.lang.reflect.Method.invoke(Native Method)
[Container factory] at com. sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
[Container factory] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
[Container factory] at org.jboss.deployment.J2eeDeployer.startModules(J2eeDeployer.java:486)
[Container factory] at org.jboss.deployment.J2eeDeployer.startApplication(J2eeDeployer.java:464)
[Container factory] at org.jboss.deployment.J2eeDeployer.deploy(J2eeDeployer.java:208)
[Container factory] at java.lang.reflect.Method.invoke(Native Method)
[Container factory] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
[Container factory] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
[Container factory] at org.jboss.ejb.AutoDeployer.deploy(AutoDeployer.java:379)
[Container factory] at org.jboss.ejb.AutoDeployer.run(AutoDeployer.java:217)
[Container factory] at org.jboss.ejb.AutoDeployer.startService(AutoDeployer.java:353)
[Container factory] at org.jboss.util.ServiceMBeanSupport.start(ServiceMBeanSupport.java:107)
[Container factory] at java.lang.reflect.Method.invoke(Native Method)
[Container factory] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
[Container factory] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
[Container factory] at org.jboss.configuration.ConfigurationService$ServiceProxy.invoke(ConfigurationService.java:836)
[Container factory] at $Proxy0.start(Unknown Source)
[Container factory] at org.jboss.util.ServiceControl.start(ServiceControl.java:81)
[Container factory] at java.lang.reflect.Method.invoke(Native Method)
[Container factory] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
[Container factory] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
[Container factory] at org.jboss.Main.<init>(Main.java:210)
[Contai ner factory] at org.jboss.Main$1.run(Main.java:116)
[Container factory] at java.security.AccessController.doPrivileged(Native Method)
[Container factory] at org.jboss.Main.main(Main.java:112)
[J2EE Deployer Default] Starting myapp-ejb.jar failed!
[Default] org.jboss.ejb.DeploymentException: Could not deploy file:/usr/java/JBoss-2.4.0_Tomcat-3.2.3/jboss/tmp/deploy/Default/myapp-ejb.jar, Cause:java.lang.NullPointerException
[Default] at org.jboss.ejb.ContainerFactory.deploy(ContainerFactory.java:401)
[Default]
[Default] at org.jboss.ejb.ContainerFactory.deploy(ContainerFactory.java:304)
[Default]
[Default] at java.lang.reflect.Method.invoke(Native Method)
[Default]
[Default] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
[Default]
[Default] at com.sun.management.jmx.MBeanServerI mpl.invoke(MBeanServerImpl.java:1523)
[Default]
[Default] at org.jboss.deployment.J2eeDeployer.startModules(J2eeDeployer.java:486)[Default]
[Default] at org.jboss.deployment.J2eeDeployer.startApplication(J2eeDeployer.java:464)
[Default]
[Default] at org.jboss.deployment.J2eeDeployer.deploy(J2eeDeployer.java:208)
[Default]
[Default] at java.lang.reflect.Method.invoke(Native Method)
[Default]
[Default] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
[Default]
[Default] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
[Default]
[Default] at org.jboss.ejb.AutoDeployer.deploy(AutoDeployer.java:379)
[Default]
[Default] at org.jboss.ejb.AutoDeployer.run(AutoDeployer.java:217)
[Default]
[Default] at org.jboss.ejb.AutoDeployer.startService(AutoDeployer.java:353)
[Default]
[Default] at org.jboss.util.ServiceMBeanSupport.start(ServiceMBeanSupport.java:107)< br>[Default]
[Default] at java.lang.reflect.Method.invoke(Native Method)
[Default]
[Default] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
[Default]
[Default] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
[Default]
[Default] at org.jboss.configuration.ConfigurationService$ServiceProxy.invoke(ConfigurationService.java:836)
[Default]
[Default] at $Proxy0.start(Unknown Source)
[Default]
[Default] at org.jboss.util.ServiceControl.start(ServiceControl.java:81)
[Default]
[Default] at java.lang.reflect.Method.invoke(Native Method)
[Default]
[Default] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
[Default]
[Default] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
[Default]
[Default] at org.jboss.Main.<init>(Main.java:210)
[Default]
[Default] at org.jboss.Main$1.run(Main.java:116 )
[Default]
[Default] at java.security.AccessController.doPrivileged(Native Method)
[Default]
[Default] at org.jboss.Main.main(Main.java:112)
[Default]
[J2EE Deployer Default] Module myapp-ejb.jar is not running
[J2EE Deployer Default] Destroying application myapp-ejb.jar
[AutoDeployer] Deployment failed:file:/usr/java/JBoss-2.4.0_Tomcat-3.2.3/jboss/deploy/myapp-ejb.jar
[AutoDeployer] org.jboss.deployment.J2eeDeploymentException: Error while starting myapp-ejb.jar: Could not deploy file:/usr/java/JBoss-2.4.0_Tomcat-3.2.3/jboss/tmp/deploy/Default/myapp-ejb.jar, Cause: org.jboss.ejb.DeploymentException: Could not deploy file:/usr/java/JBoss-2.4.0_Tomcat-3.2.3/jboss/tmp/deploy/Default/myapp-ejb.jar, Cause:java.lang.NullPointerException
[AutoDeployer] at org.jboss.deployment.J2eeDeployer.startModules(J2eeDeployer.java:511)[AutoDeployer] at org.jboss.deployment.J2eeDeployer.startApplication(J2eeDeployer.java:464)
[AutoDeployer] at org.jboss.deployment.J2eeDeployer.deploy(J2eeDeployer.java:208)
[AutoDeployer] at java.lang.reflect.Method.invoke(Native Method)
[AutoDeployer] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
[AutoDeployer] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
[AutoDeployer] at org.jboss.ejb.AutoDeployer.deploy(AutoDeployer.java:379)
[AutoDeployer] at org.jboss.ejb.AutoDeployer.run(AutoDeployer.java:217)
[AutoDeployer] at org.jboss.ejb.AutoDeployer.startService(AutoDeployer.java:353)
[AutoDeployer] at org.jboss.util.ServiceMBeanSupport.start(ServiceMBeanSupp ort.java:107)
[AutoDeployer] at java.lang.reflect.Method.invoke(Native Method)
[AutoDeployer] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
[AutoDeployer] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
[AutoDeployer] at org.jboss.configuration.ConfigurationService$ServiceProxy.invoke(ConfigurationService.java:836)
[AutoDeployer] at $Proxy0.start(Unknown Source)
[AutoDeployer] at org.jboss.util.ServiceControl.start(ServiceControl.java:81)
[AutoDeployer] at java.lang.reflect.Method.invoke(Native Method)
[AutoDeployer] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
[AutoDeployer] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
[AutoDeployer] at org.jboss.Main.<init>(Main.java:210)
[AutoDeployer] at org.jboss.Main$1.run(Main.java:116)
[AutoDeployer] at java.security.AccessController.doPrivileged(Native Method)
[AutoDeployer] at org.jboss.Main.main(Main.java:112)
[AutoDeployer] Auto deploy of file:/usr/java/JBoss-2.4.0_Tomcat-3.2.3/jboss/deploy/lib/jbosspool-jdbc.rar
[RARDeployer] Attempting to deploy RAR at 'file:/usr/java/JBoss-2.4.0_Tomcat-3.2.3/jboss/deploy/lib/jbosspool-jdbc.rar'
[RARDeployer] Loading Minerva Resource Adapter for JDBC 1/2 drivers
[RARDeployer] Required license terms present. See deployment descriptor.
[MinervaDS] Not setting config property 'Driver'
[MinervaDS] Not setting config property 'Password'
[MinervaDS] Not setting config property 'UserName'
[MinervaDS] Bound connection factory for resource adapter 'Minerva JDBC LocalTransaction ResourceAdapter' to JNDI name 'java:/MinervaDS'
[AutoDeployer ] Auto deploy of file:/usr/java/JBoss-2.4.0_Tomcat-3.2.3/jboss/deploy/lib/jms-ra.rar
[RARDeployer] Attempting to deploy RAR at 'file:/usr/java/JBoss-2.4.0_Tomcat-3.2.3/jboss/deploy/lib/jms-ra.rar'
[JmsXA] Using default value 'java:DefaultJMSProvider' for config property 'JmsProviderAdapterJNDI'
[JmsXA] FINE: Setting LogWriter: org.jboss.logging.LogWriter@21c42f
[JmsXA] Bound connection factory for resource adapter 'JMS Adapter' to JNDI name 'java:/JmsXA'
[AutoDeployer] Started
[JMXAdaptorService] Starting
[JMXAdaptorService] Started
[RMIConnectorService] Starting
[RMIConnectorService] Started
[MailService] Starting
[MailService] Mail Se rvice 'Mail' bound to java:/Mail
[MailService] Started
[Service Control] Started 26 services
[Default] JBoss 2.4.0 Started in 0m:12s













Reply via email to