JDev10g EJBJAR Deployment Error!!! Please help!!!
alexcheong Nov 29, 2004 11:47 AMHi,
I want to deploy the sample CMP EJBs on my JBoss server. But JBoss writes the following error occurs. Does anyone knows what cause this ?
00:33:10,562 INFO [EARDeployer] Init J2EE application: file:/C:/jboss-3.2.7RC1/ server/default/deploy/ModelCmEJBJAR.ear 00:33:12,125 WARN [verifier] EJB spec violation: Bean : Cmsequence Method : public String ejbCreate(String, Long, Long, Long, Long, Timestamp) Section: 10.6.4 Warning: The throws clause must define the javax.ejb.CreateException. 00:33:12,125 WARN [verifier] EJB spec violation: Bean : Cmsequence Method : public String ejbCreate(CmsequenceLocalDTO) Section: 10.6.4 Warning: The throws clause must define the javax.ejb.CreateException. 00:33:12,125 WARN [verifier] EJB spec violation: Bean : Cmsequence Method : public String ejbCreate() Section: 10.6.4 Warning: The throws clause must define the javax.ejb.CreateException. 00:33:12,125 ERROR [MainDeployer] could not create deployment: file:/C:/jboss-3. 2.7RC1/server/default/tmp/deploy/tmp45739ModelCmEJBJAR.ear-contents/ModelCmEJBJA R.jar org.jboss.deployment.DeploymentException: Verification of Enterprise Beans faile d, see above for error messages. at org.jboss.ejb.EJBDeployer.create(EJBDeployer.java:517) at org.jboss.deployment.MainDeployer.create(MainDeployer.java:783) at org.jboss.deployment.MainDeployer.create(MainDeployer.java:775) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:640) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:604) at sun.reflect.GeneratedMethodAccessor16.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.jboss.mx.server.ReflectedDispatcher.dispatch(ReflectedDispatcher. java:60) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:62) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:54) at org.jboss.mx.server.Invocation.invoke(Invocation.java:82) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker. java:197) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:473) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176) at $Proxy8.deploy(Unknown Source) at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymen tScanner.java:304) at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentS canner.java:460) at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread. doScan(AbstractDeploymentScanner.java:201) at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread. loop(AbstractDeploymentScanner.java:212) at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread. run(AbstractDeploymentScanner.java:191) 00:33:12,125 ERROR [MainDeployer] could not create deployment: file:/C:/jboss-3. 2.7RC1/server/default/deploy/ModelCmEJBJAR.ear org.jboss.deployment.DeploymentException: Verification of Enterprise Beans faile d, see above for error messages. at org.jboss.ejb.EJBDeployer.create(EJBDeployer.java:517) at org.jboss.deployment.MainDeployer.create(MainDeployer.java:783) at org.jboss.deployment.MainDeployer.create(MainDeployer.java:775) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:640) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:604) at sun.reflect.GeneratedMethodAccessor16.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.jboss.mx.server.ReflectedDispatcher.dispatch(ReflectedDispatcher. java:60) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:62) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:54) at org.jboss.mx.server.Invocation.invoke(Invocation.java:82) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker. java:197) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:473) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176) at $Proxy8.deploy(Unknown Source) at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymen tScanner.java:304) at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentS canner.java:460) at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread. doScan(AbstractDeploymentScanner.java:201) at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread. loop(AbstractDeploymentScanner.java:212) at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread. run(AbstractDeploymentScanner.java:191)
MY ejb-jar FILE:
<?xml version = '1.0' encoding = 'windows-1252'?> <!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "http://java.sun.com/dtd/ejb-jar_2_0.dtd"> <ejb-jar> <enterprise-beans> <session> <description>Session Bean ( Stateless )</description> <display-name>CmsequenceManager</display-name> <ejb-name>CmsequenceManager</ejb-name> <home>com.fsc.model.cm.sequence.ejb.CmsequenceManagerHome</home> <remote>com.fsc.model.cm.sequence.ejb.CmsequenceManager</remote> <local-home>com.fsc.model.cm.sequence.ejb.CmsequenceManagerLocalHome</local-home> <local>com.fsc.model.cm.sequence.ejb.CmsequenceManagerLocal</local> <ejb-class>com.fsc.model.cm.sequence.ejb.CmsequenceManagerBean</ejb-class> <session-type>Stateless</session-type> <transaction-type>Container</transaction-type> <ejb-local-ref> <ejb-ref-name>ejb/local/Cmsequence</ejb-ref-name> <ejb-ref-type>Entity</ejb-ref-type> <local-home>com.fsc.model.cm.sequence.ejb.CmsequenceLocalHome</local-home> <local>com.fsc.model.cm.sequence.ejb.CmsequenceLocal</local> <ejb-link>Cmsequence</ejb-link> </ejb-local-ref> </session> <session> <description>Session Bean ( Stateless )</description> <display-name>CmPatientBarManager</display-name> <ejb-name>CmPatientBarManager</ejb-name> <home>com.fsc.model.cm.patientbar.ejb.CmPatientBarManagerHome</home> <remote>com.fsc.model.cm.patientbar.ejb.CmPatientBarManager</remote> <local-home>com.fsc.model.cm.patientbar.ejb.CmPatientBarManagerLocalHome</local-home> <local>com.fsc.model.cm.patientbar.ejb.CmPatientBarManagerLocal</local> <ejb-class>com.fsc.model.cm.patientbar.ejb.CmPatientBarManagerBean</ejb-class> <session-type>Stateless</session-type> <transaction-type>Container</transaction-type> </session> <entity> <description>Entity Bean ( CMP )</description> <display-name>Cmsequence</display-name> <ejb-name>Cmsequence</ejb-name> <home>com.fsc.model.cm.sequence.ejb.CmsequenceHome</home> <remote>com.fsc.model.cm.sequence.ejb.Cmsequence</remote> <local-home>com.fsc.model.cm.sequence.ejb.CmsequenceLocalHome</local-home> <local>com.fsc.model.cm.sequence.ejb.CmsequenceLocal</local> <ejb-class>com.fsc.model.cm.sequence.ejb.CmsequenceBean</ejb-class> <persistence-type>Container</persistence-type> <prim-key-class>java.lang.String</prim-key-class> <reentrant>False</reentrant> <cmp-version>2.x</cmp-version> <abstract-schema-name>Cmsequence</abstract-schema-name> <cmp-field> <field-name>sequenceId</field-name> </cmp-field> <cmp-field> <field-name>currentNo</field-name> </cmp-field> <cmp-field> <field-name>startNo</field-name> </cmp-field> <cmp-field> <field-name>endNo</field-name> </cmp-field> <cmp-field> <field-name>noFormat</field-name> </cmp-field> <cmp-field> <field-name>episodeId</field-name> </cmp-field> <cmp-field> <field-name>resetDateFormat</field-name> </cmp-field> <cmp-field> <field-name>resetAtDateValue</field-name> </cmp-field> <cmp-field> <field-name>dbFunctionName</field-name> </cmp-field> <cmp-field> <field-name>prevUpdatedBy</field-name> </cmp-field> <cmp-field> <field-name>prevUpdatedDatetime</field-name> </cmp-field> <cmp-field> <field-name>lastUpdatedBy</field-name> </cmp-field> <cmp-field> <field-name>lastUpdatedDatetime</field-name> </cmp-field> <primkey-field>sequenceId</primkey-field> <query> <query-method> <method-name>findAll</method-name> <method-params/> </query-method> <ejb-ql>select object(o) from Cmsequence o</ejb-ql> </query> </entity> </enterprise-beans> <assembly-descriptor> <container-transaction> <method> <ejb-name>Cmsequence</ejb-name> <method-name>*</method-name> </method> <trans-attribute>Supports</trans-attribute> </container-transaction> <container-transaction> <method> <ejb-name>CmsequenceManager</ejb-name> <method-name>*</method-name> </method> <trans-attribute>Required</trans-attribute> </container-transaction> <container-transaction> <method> <ejb-name>CmPatientBarManager</ejb-name> <method-name>*</method-name> </method> <trans-attribute>Required</trans-attribute> </container-transaction> </assembly-descriptor> </ejb-jar>
MY HOME INTERFACE:
package com.fsc.model.cm.sequence.ejb;
import javax.ejb.EJBHome;
import java.rmi.RemoteException;
import javax.ejb.CreateException;
import javax.ejb.FinderException;
import java.util.Collection;
import java.sql.Timestamp;
public interface CmsequenceHome extends EJBHome
{
Cmsequence create() throws RemoteException, CreateException;
Cmsequence findByPrimaryKey(String primaryKey) throws RemoteException, FinderException;
Collection findAll() throws RemoteException, FinderException;
Cmsequence create(String sequenceId, Long currentNo, Long startNo, Long endNo, Long lastUpdatedBy, Timestamp lastUpdatedDatetime) throws RemoteException, CreateException;
}MY BEAN CLASS:
package com.fsc.model.cm.sequence.ejb;
import java.sql.SQLException;
import javax.ejb.CreateException;
import javax.ejb.EJBException;
import javax.ejb.EntityBean;
import javax.ejb.EntityContext;
import java.sql.Timestamp;
public abstract class CmsequenceBean implements EntityBean
{
private EntityContext context;
public String ejbCreate()
{
return null;
}
public void ejbPostCreate()
{
}
public String ejbCreate(CmsequenceLocalDTO cmsequenceLocalDTO)
{
setSequenceId(cmsequenceLocalDTO.getSequenceId());
setCurrentNo(cmsequenceLocalDTO.getCurrentNo());
setStartNo(cmsequenceLocalDTO.getStartNo());
setEndNo(cmsequenceLocalDTO.getEndNo());
setNoFormat(cmsequenceLocalDTO.getNoFormat());
setEpisodeId(cmsequenceLocalDTO.getEpisodeId());
setResetDateFormat(cmsequenceLocalDTO.getResetDateFormat());
setResetAtDateValue(cmsequenceLocalDTO.getResetAtDateValue());
setDbFunctionName(cmsequenceLocalDTO.getDbFunctionName());
setPrevUpdatedBy(cmsequenceLocalDTO.getPrevUpdatedBy());
setPrevUpdatedDatetime(cmsequenceLocalDTO.getPrevUpdatedDatetime());
setLastUpdatedBy(cmsequenceLocalDTO.getLastUpdatedBy());
setLastUpdatedDatetime(cmsequenceLocalDTO.getLastUpdatedDatetime());
return cmsequenceLocalDTO.getSequenceId();
}
public void ejbPostCreate(CmsequenceLocalDTO cmsequenceLocalDTO)
{
}
public String ejbCreate(String sequenceId, Long currentNo, Long startNo, Long endNo, Long lastUpdatedBy, Timestamp lastUpdatedDatetime) throws CreateException, EJBException, SQLException
{
setSequenceId(sequenceId);
setCurrentNo(currentNo);
setStartNo(startNo);
setEndNo(endNo);
setLastUpdatedBy(lastUpdatedBy);
setLastUpdatedDatetime(lastUpdatedDatetime);
return sequenceId;
}
public void ejbPostCreate(String sequenceId, Long currentNo, Long startNo, Long endNo, Long lastUpdatedBy, Timestamp lastUpdatedDatetime) throws CreateException, EJBException, SQLException
{
}
public void ejbActivate()
{
}
public void ejbLoad()
{
}
public void ejbPassivate()
{
}
public void ejbRemove()
{
}
public void ejbStore()
{
}
public void setEntityContext(EntityContext ctx)
{
this.context = ctx;
}
public void unsetEntityContext()
{
this.context = null;
}
public abstract String getSequenceId();
public abstract void setSequenceId(String newSequenceId);
public abstract Long getCurrentNo();
public abstract void setCurrentNo(Long newCurrentNo);
public abstract Long getStartNo();
public abstract void setStartNo(Long newStartNo);
public abstract Long getEndNo();
public abstract void setEndNo(Long newEndNo);
public abstract String getNoFormat();
public abstract void setNoFormat(String newNoFormat);
public abstract String getEpisodeId();
public abstract void setEpisodeId(String newEpisodeId);
public abstract String getResetDateFormat();
public abstract void setResetDateFormat(String newResetDateFormat);
public abstract String getResetAtDateValue();
public abstract void setResetAtDateValue(String newResetAtDateValue);
public abstract String getDbFunctionName();
public abstract void setDbFunctionName(String newDbFunctionName);
public abstract Long getPrevUpdatedBy();
public abstract void setPrevUpdatedBy(Long newPrevUpdatedBy);
public abstract Timestamp getPrevUpdatedDatetime();
public abstract void setPrevUpdatedDatetime(Timestamp newPrevUpdatedDatetime);
public abstract Long getLastUpdatedBy();
public abstract void setLastUpdatedBy(Long newLastUpdatedBy);
public abstract Timestamp getLastUpdatedDatetime();
public abstract void setLastUpdatedDatetime(Timestamp newLastUpdatedDatetime);
}