Ejb-jar.xml (Help)
What is the difference between the <resource-ref> and <resource-env-ref> tags?
<env-entry> is for environment variables, such as a string representation of a url, or the number of retries to attempt on doing something, and although I'm not 100% certain, tend to be java data types such as java.lang.String and java.lang.Integer. I'm pretty sure the deployment of that ejb will bind that valud into the JNDI.
<resource-env-ref> is something that you bind to JNDI. Although I'm not 100% sure again ( I've nev er used this myself ) it seems to be a more complex class, or one that you've defined. Looking at it, you have to bind it into the JNDI yourself.
Similar Messages
-
Deploy ejb on wls7.0 weblogic.ejb.jar.xml ! help
Morning !
i'm try to deploy a EJB on wls7.0
my descriptor is like this and i don't really undestand what's go wrong.
thanks you to help
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE weblogic-ejb-jar PUBLIC "-//BEA Systems, Inc.//DTD WebLogic 7.0.0
EJB//EN" "http://www.bea.com/servers/wls700/dtd/weblogic700-ejb-jar.dtd" >
<weblogic-ejb-jar>
<weblogic-enterprise-bean>
<entity>
<ejb-name>Compte</ejb-name>
<bean-home-name>Compte</bean-home-name>
<resource-ref>
<res-ref-name>jdbc/DataSource</res-ref-name>
<jndi-name>DataSource</jndi-name>
</resource-ref>
<cmp-info>
<database-map>
<table>"Compte"</table>
<column-map>
<field-name>id</field-name>
<column-name>"id"</column-name>
</column-map>
<column-map>
<field-name>nomSte</field-name>
<column-name>"nomSte"</column-name>
</column-map>
<column-map>
<field-name>dateCreation</field-name>
<column-name>"dateCreation"</column-name>
</column-map>
<column-map>
<field-name>nbEmployes</field-name>
<column-name>"nbEmployes"</column-name>
</column-map>
<column-map>
<field-name>caSte</field-name>
<column-name>"caSte"</column-name>
</column-map>
<column-map>
<field-name>descSte</field-name>
<column-name>"descSte"</column-name>
</column-map>
<column-map>
<field-name>logo</field-name>
<column-name>"logo"</column-name>
</column-map>
<column-map>
<field-name>id_commercial</field-name>
<column-name>"id_commercial"</column-name>
</column-map>
</database-map>
<finder>
<method-signature>findAll()</method-signature>
<where-clause />
<load-state>True</load-state>
</finder>
</cmp-info>
</entity>
<datasource-definitions>
<datasource>
<jndi-name>DataSource</jndi-name>
<url>jdbc:odbc:dev_java</url>
<username>sa</username>
<password>lnx.sully</password>
<driver-class-name>sun.jdbc.odbc.JdbcOdbcDriver</driver-class-name>
</datasource>
</datasource-definitions>
</weblogic-enterprise-bean>
</weblogic-ejb-jar>
the EXception is !
Exception
weblogic.management.ApplicationException: No deployment found at
E:\bea70\weblogic700\server\bin\GRPEJB.jar.
at
weblogic.j2ee.J2EEApplicationContainerFactory.initializeDeployment(J2EEAppli
cationContainerFactory.java:350)
at
weblogic.management.deploy.DeployerRuntime.unprotectedActivate(DeployerRunti
me.java:350)
at
weblogic.management.deploy.DeployerRuntime.access$0(DeployerRuntime.java:282
at
weblogic.management.deploy.DeployerRuntime$1.run(DeployerRuntime.java:947)
at
weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage
r.java:721)
at
weblogic.management.deploy.DeployerRuntime.checkAndPerformDeployerActions(De
ployerRuntime.java:941)
at
weblogic.management.deploy.DeployerRuntime.activate(DeployerRuntime.java:279
at java.lang.reflect.Method.invoke(Native Method)
at
weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl
.java:717)
at
weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:6
99)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
at
weblogic.management.internal.RemoteMBeanServerImpl.invoke(RemoteMBeanServerI
mpl.java:921)
at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:470)
at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:198)
at $Proxy48.activate(Unknown Source)
at
weblogic.management.console.actions.mbean.ConfigureAppWizardAction.commit(Co
nfigureAppWizardAction.java:248)
at
weblogic.management.console.actions.mbean.ConfigureAppWizardAction.perform(C
onfigureAppWizardAction.java:100)
at
weblogic.management.console.actions.internal.ActionServlet.doAction(ActionSe
rvlet.java:171)
at
weblogic.management.console.actions.internal.ActionServlet.doPost(ActionServ
let.java:85)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(Servle
tStubImpl.java:945)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:332)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:242)
at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(W
ebAppServletContext.java:5360)
at
weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage
r.java:721)
at
weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
ntext.java:3043)
at
weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
:2468)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:152)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:133)
tahnks you !
Unimon Thierry
CGBI- CET-E-services
69, Blvd Galliéni
91 Issy les Mlx
tele :01/55/95/54/22 Poste:5422
Port :06/61/81/78/59
Prof : mailto:[email protected]
Pers : mailto:[email protected]oops! Pls ignore my previous mail. It was for a different problem.
FOr the original problem of "couldn ot locate the bean with the ejb-name XZY in weblogic-ejb-jar.xml":
This happens if you don't have the below files defined
for a JAR/EAR file:
weblogic-ejb-jar.xml and weblogic-cmp-rdbms-jar.xml (needed if you have any Datasource mapped)
These two are basic files required for any JAR/EAR file.
If you dont' have it already you can generate them using
$WLS_HOME/bin/startWLBuilder.sh GUI tool bundled along
with WLS (I used 8.1 SP4) to generate these files ! This tool is really helpful.
- Mouli -
Error compiling ejb-jar.xml. Help!!
I do not know why this xml file is giving me the errors displayed below.
Thank you in advance.
Here is my xml file:
<?xml version="1.0"?>
<!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise
JavaBeans 2.0//EN' 'http://www.java.sun.com/j2ee/dtds/ejb-jar_2_0.dtd'>
<ejb-jar>
<enterprise-beans>
<entity>
<ejb-name>ObjectConnectorBean</ejb-name>
<display-name>ObjectConnector</display-name>
<home>com.harris.netboss.shared.posting.ObjectConnectorHome</home>
<remote>com.harris.netboss.shared.posting.ObjectConnector</remote>
<ejb-class>com.harris.netboss.shared.posting.ObjectConnectorBean</ejb-class>
<persistence-type>Bean</persistence-type>
<prim-key-class>com.harris.netboss.shared.posting.ObjectConnectorPK</prim-ke
y-class>
<reentrant>False</reentrant>
</entity>
</enterprise-beans>
</ejb-jar>
Here is the error message:
org.xml.sax.SAXParseException: The content of element type "entity" must
match
"(description?,display-name?,small-icon?,large-icon?,ejb-name,home,remote,ej
b-class,persistence-type,prim-key-class,reentrant,cmp-version?,abstract-sche
ma-name?,cmp-field*,primkey-field?,transaction-scope?,env-entry*,ejb-ref*,se
curity-role-ref*,security-identity?,resource-ref*,resource-env-ref*,query*)"
at java.lang.Throwable.fillInStackTrace(Native Method)
at java.lang.Throwable.fillInStackTrace(Compiled Code)
at java.lang.Throwable.<init>(Compiled Code)
at java.lang.Exception.<init>(Exception.java:42)
at org.xml.sax.SAXException.<init>(SAXException.java:45)
at org.xml.sax.SAXParseException.<init>(SAXParseException.java:56)
at
weblogic.apache.xerces.framework.XMLParser.reportError(XMLParser.java:1008)
at
weblogic.apache.xerces.validators.common.XMLValidator.reportRecoverableXMLEr
ror(XMLValidator.java:1280)
at
weblogic.apache.xerces.validators.common.XMLValidator.callEndElement(Compile
d Code)
at
weblogic.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispat
ch(Compiled Code)
at weblogic.apache.xerces.framework.XMLDocumentScanner.parseSome(Compiled
Code)
at weblogic.apache.xerces.framework.XMLParser.parse(XMLParser.java:900)
at weblogic.xml.process.ProcessorDriver.process(ProcessorDriver.java:128)
at
weblogic.ejb20.dd.xml.EjbJarLoader_EJB20.process(EjbJarLoader_EJB20.java:919
at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:74)
at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:47)
at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:38)
at weblogic.ejbc20.runBody(Compiled Code)
at weblogic.utils.compiler.Tool.run(Tool.java:81)
at weblogic.ejbc.main(ejbc.java:20)
--------------- nested within: ------------------
weblogic.xml.process.XMLParsingException: The content of element type
"entity" must match
"(description?,display-name?,small-icon?,large-icon?,ejb-name,home,remote,ej
b-class,persistence-type,prim-key-class,reentrant,cmp-version?,abstract-sche
ma-name?,cmp-field*,primkey-field?,transaction-scope?,env-entry*,ejb-ref*,se
curity-role-ref*,security-identity?,resource-ref*,resource-env-ref*,query*)"
. - with nested exception:
[org.xml.sax.SAXParseException: The content of element type "entity" must
match
"(description?,display-name?,small-icon?,large-icon?,ejb-name,home,remote,ej
b-class,persistence-type,prim-key-class,reentrant,cmp-version?,abstract-sche
ma-name?,cmp-field*,primkey-field?,transaction-scope?,env-entry*,ejb-ref*,se
curity-role-ref*,security-identity?,resource-ref*,resource-env-ref*,query*)"
.] Line: 16 Column: 16
at java.lang.Throwable.fillInStackTrace(Native Method)
at java.lang.Throwable.fillInStackTrace(Compiled Code)
at java.lang.Throwable.<init>(Compiled Code)
at java.lang.Exception.<init>(Compiled Code)
at weblogic.utils.NestedException.<init>(NestedException.java:18)
at
weblogic.xml.process.XMLParsingException.<init>(XMLParsingException.java:17)
at weblogic.xml.process.ProcessorDriver.process(ProcessorDriver.java:132)
at
weblogic.ejb20.dd.xml.EjbJarLoader_EJB20.process(EjbJarLoader_EJB20.java:919
at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:74)
at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:47)
at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:38)
at weblogic.ejbc20.runBody(Compiled Code)
at weblogic.utils.compiler.Tool.run(Tool.java:81)
at weblogic.ejbc.main(ejbc.java:20)
ERROR: weblogic.xml.process.XMLParsingException: The content of element type
"entity" must match
"(description?,display-name?,small-icon?,large-icon?,ejb-name,home,remote,ej
b-class,persistence-type,prim-key-class,reentrant,cmp-version?,abstract-sche
ma-name?,cmp-field*,primkey-field?,transaction-scope?,env-entry*,ejb-ref*,se
curity-role-ref*,security-identity?,resource-ref*,resource-env-ref*,query*)"
. - with nested exception:
[org.xml.sax.SAXParseException: The content of element type "entity" must
match
"(description?,display-name?,small-icon?,large-icon?,ejb-name,home,remote,ej
b-class,persistence-type,prim-key-class,reentrant,cmp-version?,abstract-sche
ma-name?,cmp-field*,primkey-field?,transaction-scope?,env-entry*,ejb-ref*,se
curity-role-ref*,security-identity?,resource-ref*,resource-env-ref*,query*)"
.] Line: 16 Column: 16looks like your xml file(ejb-jar.xml) is missing some required tag element or
the elements are out of
order. the format is specified in a dtd, you should take a look at the dtd for
ejb-jar.xml. for wl5.1, try looking under c:\weblogic for ejb-jar.dtd
Richard Ong wrote:
I do not know why this xml file is giving me the errors displayed below.
Thank you in advance.
Here is my xml file:
<?xml version="1.0"?>
<!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise
JavaBeans 2.0//EN' 'http://www.java.sun.com/j2ee/dtds/ejb-jar_2_0.dtd'>
<ejb-jar>
<enterprise-beans>
<entity>
<ejb-name>ObjectConnectorBean</ejb-name>
<display-name>ObjectConnector</display-name>
<home>com.harris.netboss.shared.posting.ObjectConnectorHome</home>
<remote>com.harris.netboss.shared.posting.ObjectConnector</remote>
<ejb-class>com.harris.netboss.shared.posting.ObjectConnectorBean</ejb-class>
<persistence-type>Bean</persistence-type>
<prim-key-class>com.harris.netboss.shared.posting.ObjectConnectorPK</prim-ke
y-class>
<reentrant>False</reentrant>
</entity>
</enterprise-beans>
</ejb-jar>
Here is the error message:
org.xml.sax.SAXParseException: The content of element type "entity" must
match
"(description?,display-name?,small-icon?,large-icon?,ejb-name,home,remote,ej
b-class,persistence-type,prim-key-class,reentrant,cmp-version?,abstract-sche
ma-name?,cmp-field*,primkey-field?,transaction-scope?,env-entry*,ejb-ref*,se
curity-role-ref*,security-identity?,resource-ref*,resource-env-ref*,query*)"
at java.lang.Throwable.fillInStackTrace(Native Method)
at java.lang.Throwable.fillInStackTrace(Compiled Code)
at java.lang.Throwable.<init>(Compiled Code)
at java.lang.Exception.<init>(Exception.java:42)
at org.xml.sax.SAXException.<init>(SAXException.java:45)
at org.xml.sax.SAXParseException.<init>(SAXParseException.java:56)
at
weblogic.apache.xerces.framework.XMLParser.reportError(XMLParser.java:1008)
at
weblogic.apache.xerces.validators.common.XMLValidator.reportRecoverableXMLEr
ror(XMLValidator.java:1280)
at
weblogic.apache.xerces.validators.common.XMLValidator.callEndElement(Compile
d Code)
at
weblogic.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispat
ch(Compiled Code)
at weblogic.apache.xerces.framework.XMLDocumentScanner.parseSome(Compiled
Code)
at weblogic.apache.xerces.framework.XMLParser.parse(XMLParser.java:900)
at weblogic.xml.process.ProcessorDriver.process(ProcessorDriver.java:128)
at
weblogic.ejb20.dd.xml.EjbJarLoader_EJB20.process(EjbJarLoader_EJB20.java:919
at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:74)
at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:47)
at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:38)
at weblogic.ejbc20.runBody(Compiled Code)
at weblogic.utils.compiler.Tool.run(Tool.java:81)
at weblogic.ejbc.main(ejbc.java:20)
--------------- nested within: ------------------
weblogic.xml.process.XMLParsingException: The content of element type
"entity" must match
"(description?,display-name?,small-icon?,large-icon?,ejb-name,home,remote,ej
b-class,persistence-type,prim-key-class,reentrant,cmp-version?,abstract-sche
ma-name?,cmp-field*,primkey-field?,transaction-scope?,env-entry*,ejb-ref*,se
curity-role-ref*,security-identity?,resource-ref*,resource-env-ref*,query*)"
. - with nested exception:
[org.xml.sax.SAXParseException: The content of element type "entity" must
match
"(description?,display-name?,small-icon?,large-icon?,ejb-name,home,remote,ej
b-class,persistence-type,prim-key-class,reentrant,cmp-version?,abstract-sche
ma-name?,cmp-field*,primkey-field?,transaction-scope?,env-entry*,ejb-ref*,se
curity-role-ref*,security-identity?,resource-ref*,resource-env-ref*,query*)"
.] Line: 16 Column: 16
at java.lang.Throwable.fillInStackTrace(Native Method)
at java.lang.Throwable.fillInStackTrace(Compiled Code)
at java.lang.Throwable.<init>(Compiled Code)
at java.lang.Exception.<init>(Compiled Code)
at weblogic.utils.NestedException.<init>(NestedException.java:18)
at
weblogic.xml.process.XMLParsingException.<init>(XMLParsingException.java:17)
at weblogic.xml.process.ProcessorDriver.process(ProcessorDriver.java:132)
at
weblogic.ejb20.dd.xml.EjbJarLoader_EJB20.process(EjbJarLoader_EJB20.java:919
at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:74)
at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:47)
at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:38)
at weblogic.ejbc20.runBody(Compiled Code)
at weblogic.utils.compiler.Tool.run(Tool.java:81)
at weblogic.ejbc.main(ejbc.java:20)
ERROR: weblogic.xml.process.XMLParsingException: The content of element type
"entity" must match
"(description?,display-name?,small-icon?,large-icon?,ejb-name,home,remote,ej
b-class,persistence-type,prim-key-class,reentrant,cmp-version?,abstract-sche
ma-name?,cmp-field*,primkey-field?,transaction-scope?,env-entry*,ejb-ref*,se
curity-role-ref*,security-identity?,resource-ref*,resource-env-ref*,query*)"
. - with nested exception:
[org.xml.sax.SAXParseException: The content of element type "entity" must
match
"(description?,display-name?,small-icon?,large-icon?,ejb-name,home,remote,ej
b-class,persistence-type,prim-key-class,reentrant,cmp-version?,abstract-sche
ma-name?,cmp-field*,primkey-field?,transaction-scope?,env-entry*,ejb-ref*,se
curity-role-ref*,security-identity?,resource-ref*,resource-env-ref*,query*)"
.] Line: 16 Column: 16 -
Error while migrating orion-ejb-jar.xml from OC4J 9.0.4.1
I am trying to use Toplink migration tool to take our existing orion-ejb-jar.xml file and toplink-ejb-jar.xml file to new 10.1.3 deployment. While running the migration tool I get the following error
WARNING: Oc4j native CMP setting optimistic-locking on
entity(TransactionTypeEntityBean) is not migrated and supported.
java.lang.IllegalArgumentException: MWDatabaseField[9BE2B5]
(TAX_RULE.TAX_RULE_ID)
at
oracle.toplink.workbench.mappingsmodel.desc.relational.MWRelationalPrima
ryKeyPolicy.addPrimaryKey(MWRelationalPrimaryKeyPolicy.java:99)
at
oracle.toplink.tools.migration.RuntimeCMPProjectToMWProjectConverter.con
vertDescriptor(RuntimeCMPProjectToMWProjectConverter.java:297)
at
oracle.toplink.tools.migration.RuntimeCMPProjectToMWProjectConverter.con
vertDescriptors(RuntimeCMPProjectToMWProjectConverter.java:265)
at
oracle.toplink.tools.migration.RuntimeCMPProjectToMWProjectConverter.con
vertProject(RuntimeCMPProjectToMWProjectConverter.java:144)
at
oracle.toplink.tools.migration.MigrationManagerBase.convertAndWriteoutMW
Project(MigrationManagerBase.java:369)
at
oracle.toplink.tools.migration.MigrationManagerBase.migrate(MigrationMan
agerBase.java:358)
at
oracle.toplink.tools.migration.io.MigrationIOManager.buildMigratedJarFil
e(MigrationIOManager.java:243)
at
oracle.toplink.tools.migration.io.MigrationIOManager.operateEarEntry(Mig
rationIOManager.java:181)
at
oracle.toplink.tools.migration.io.MigrationIOManager.operateEar(Migratio
nIOManager.java:145)
at
oracle.toplink.tools.migration.io.MigrationIOManager.operateIO(Migration
IOManager.java:88)
at
oracle.toplink.tools.migration.MigrationManagerBase.startMigration(Migra
tionManagerBase.java:280)
at
oracle.toplink.tools.migration.MigrationManagerBase.run(MigrationManager
Base.java:121)
at
oracle.toplink.tools.migration.MigrationManagerBase.run(MigrationManager
Base.java:97)
at
oracle.toplink.tools.migration.TopLinkCMPMigrator.main(TopLinkCMPMigrato
r.java:59)Hello,
The warning message looks to be unrelated to the java.lang.IllegalArgumentException error. The warning states that optimistic locking cannot be migrated to the toplink-ejb-jar.xml file; this is stated in chapter 7 of the TopLink developer's guide at
http://download-west.oracle.com/otn_hosted_doc/toplink/1013/MAIN/_pdf/b13593_v1_01.pdf
The exception though seems to indicate that your orion-ejb-jar.xml contains EJBs mapped to the same table that are not related through EJB inheritance. I do it all the time with POJOs so this will work in TopLink, but you will need a support case to help get your project migrated if this is the case.
Best Regards,
Chris Delahunt -
Weblogic 10.3.0 Deployment error when using ejb-jar.xml
Hi,
I am getting the following error while deploying my EJB3 application on Weblogic 10.3.0. This is happening only if I include ejb-jar.xml.
As per the EJB3 descriptor spec, Remote Home or Local home are not exists.
Is this a issue in Weblogic 10.3.0 or am I missing any special setup ?
Please help.
weblogic.application.ModuleException: Exception preparing module: EJBModule(egm-poc.jar)
Unable to deploy EJB: C:\appsrv\domains\WeblogicRS1.1-domain\servers\admin\tmp\_WL_user\_appsdir_egmear_ear\ot2591\egm-poc.
jar from egm-poc.jar:
In EJB JPATestBean, both the remote home and remote component interface must be specified. Currently, only one of them is spec
ified.
at weblogic.ejb.container.deployer.EJBModule.prepare(EJBModule.java:452)
at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:93)
at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:387)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:58)
My ejb-jar.xml is
- <ejb-jar version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd">
<description>JPA Test Application</description>
<display-name>JPATest</display-name>
- <enterprise-beans>
- <session>
<ejb-name>JPATestBean</ejb-name>
<remote>egm.poc.jpa.JPATestBeanRemote</remote>
<local>egm.poc.jpa.JPATestBeanLocal</local>
<ejb-class>egm.poc.jpa.JPATestBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
</session>
- <session>
<ejb-name>AuditInfoDAOH</ejb-name>
<local>egm.poc.jpa.Audit</local>
<ejb-class>egm.poc.jpa.AuditInfoDAOH</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
</session>
</enterprise-beans>
- <assembly-descriptor>
- <container-transaction>
- <method>
<ejb-name>JPATestBean</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>RequiresNew</trans-attribute>
</container-transaction>
- <container-transaction>
- <method>
<ejb-name>AuditInfoDAOH</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
</assembly-descriptor>
</ejb-jar>
Regards
SajiHi,
Seems the issue is not common. Can anyone throw some light on this ?
Regards
Saji -
Can't create a JAXB binding for ejb-jar.xml using xjc
Hi all,
I have been trying to build a JAXB binding for EJB deployment descriptors, mainly because I have to update a hand-cranked ejb-jar.xml file on the fly with some additions that have come from a code generator.
I have tried to use
xjc ejb-jar_2_1.xsd j2ee_1_4.xsd ejb-jar_2_1.xsd
xjc on the schema definitions I found at http://java.sun.com/xml/ns/j2ee/ but I can't get it to work. It produces reams of errors, see below for a short extract.
Of course, someone could put me out of my misery and tell me where to find a binding that someone else has done. I can't be the first chimp on the planet that has wanted to do this!
Any help much appreciated.
errors:
[WARNING] warning: "blockDefault" attribute of <schema> is not supported
line 3 of xml.xsd
[WARNING] warning: "finalDefault" attribute of <schema> is not supported
line 3 of xml.xsd
[WARNING] warning: <key> identity constraint will be ignored by JAXB validation
line 117 of j2ee_web_services_client_1_1.xsd
[WARNING] warning: <key> identity constraint will be ignored by JAXB validation
line 115 of ejb-jar_2_1.xsd
[WARNING] warning: <keyref> identity constraint will be ignored by JAXB validation
line 129 of ejb-jar_2_1.xsd
[WARNING] warning: <key> identity constraint will be ignored by JAXB validation
line 145 of ejb-jar_2_1.xsd
[WARNING] warning: <keyref> identity constraint will be ignored by JAXB validation
line 159 of ejb-jar_2_1.xsdException initializing 'oracle.dbtools.raptor.MonitorJDBCAddin' in extension 'Oracle SQL Developer': oracle.classloader.
util.AnnotatedNoClassDefFoundError:
Missing class: oracle.jdbc.OracleDriverThe Oracle driver is not on the classpath. -
Failed to load weblogic-ejb-jar.xml
Hi,
I try to deploy an EJB on Weblogic 9.1, but the weblogic-ejb-jar seems to cause this exception :
======================================================
[wlappc] <30 oct. 2006 12 h 13 CET> <Error> <J2EE> <BEA-160187> <weblogic.appc failed to compile your application. Recompile with the -verbose option for more details. Please see the error message(s) below.>
[wlappc] com.bea.xml.XmlException: failed to load java type corresponding to e=weblogic-ejb-jar@http://www.bea.com/ns/weblogic/910
[wlappc] at com.bea.staxb.runtime.internal.UnmarshalResult.getPojoBindingType(UnmarshalResult.java:325)
[wlappc] at com.bea.staxb.runtime.internal.UnmarshalResult.determineTypeForGlobalElement(UnmarshalResult.java:292)
[wlappc] at com.bea.staxb.runtime.internal.UnmarshalResult.determineTypeForGlobalElement(UnmarshalResult.java:302)
[wlappc] at com.bea.staxb.runtime.internal.UnmarshalResult.determineRootType(UnmarshalResult.java:283)
[wlappc] at com.bea.staxb.runtime.internal.UnmarshalResult.unmarshalDocument(UnmarshalResult.java:153)
[wlappc] at com.bea.staxb.runtime.internal.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:65)
[wlappc] at weblogic.descriptor.internal.MarshallerFactory$1.createDescriptor(MarshallerFactory.java:138)
[wlappc] at weblogic.descriptor.DescriptorManager.createDescriptor(DescriptorManager.java:271)
[wlappc] at weblogic.descriptor.DescriptorManager.createDescriptor(DescriptorManager.java:240)
[wlappc] at weblogic.descriptor.DescriptorManager.createDescriptor(DescriptorManager.java:300)
[wlappc] at weblogic.application.descriptor.AbstractDescriptorLoader.createDescriptor(AbstractDescriptorLoader.java:344)
[wlappc] at weblogic.application.descriptor.CachingDescriptorLoader.createDescriptor(CachingDescriptorLoader.java:188)
[wlappc] at weblogic.application.descriptor.AbstractDescriptorLoader.createDescriptor(AbstractDescriptorLoader.java:328)
[wlappc] at weblogic.application.descriptor.AbstractDescriptorLoader.getDescriptor(AbstractDescriptorLoader.java:237)
[wlappc] at weblogic.application.descriptor.AbstractDescriptorLoader.getRootDescriptorBean(AbstractDescriptorLoader.java:217)
[wlappc] at weblogic.ejb.spi.EjbJarDescriptor.parseWeblogicEjbJarBean(EjbJarDescriptor.java:171)
[wlappc] at weblogic.ejb.container.dd.xml.DDUtils.processWLEjbJarXMLWithSchema(DDUtils.java:706)
[wlappc] at weblogic.ejb.container.dd.xml.DDUtils.parseWLDD(DDUtils.java:535)
[wlappc] at weblogic.ejb.container.dd.xml.DDUtils.createDescriptorFromJarFile(DDUtils.java:358)
[wlappc] at weblogic.ejb.container.dd.xml.DDUtils.createReadOnlyDescriptorFromJarFile(DDUtils.java:141)
[wlappc] at weblogic.ejb.container.ejbc.EJBCompiler.parseDescriptors(EJBCompiler.java:1345)
[wlappc] at weblogic.ejb.container.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:431)
[wlappc] at weblogic.application.compiler.AppcUtils.compileEJB(AppcUtils.java:292)
[wlappc] at weblogic.application.compiler.EJBCompiler.compile(EJBCompiler.java:95)
[wlappc] at weblogic.application.compiler.flow.AppCompilerFlow.compileInput(AppCompilerFlow.java:113)
[wlappc] at weblogic.application.compiler.flow.AppCompilerFlow.compile(AppCompilerFlow.java:43)
[wlappc] at weblogic.application.compiler.FlowDriver$FlowStateChange.next(FlowDriver.java:55)
[wlappc] at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
[wlappc] at weblogic.application.compiler.FlowDriver.run(FlowDriver.java:24)
[wlappc] at weblogic.application.compiler.Appc.runBody(Appc.java:151)
[wlappc] at weblogic.utils.compiler.Tool.run(Tool.java:158)
[wlappc] at weblogic.utils.compiler.Tool.run(Tool.java:115)
======================================================
Here is my weblogic-ejb-jar.xml file :
======================================================
<?xml version="1.0" encoding="ISO-8859-1"?>
<weblogic-ejb-jar xmlns="http://www.bea.com/ns/weblogic/910"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.bea.com/ns/weblogic/910
http://www.bea.com/ns/weblogic/910/weblogic-ejb-jar.xsd">
<weblogic-enterprise-bean>
<ejb-name>MyMDB</ejb-name>
<message-driven-descriptor>
<resource-adapter-jndi-name>ActiveMQRA</resource-adapter-jndi-name>
<connection-factory-jndi-name>myQCF</connection-factory-jndi-name>
</message-driven-descriptor>
<resource-description>
<res-ref-name>jms/factory</res-ref-name>
<jndi-name>myQCF</jndi-name>
</resource-description>
<resource-env-description>
<resource-env-ref-name>jms/queue</resource-env-ref-name>
<jndi-name>queue.out</jndi-name>
</resource-env-description>
</weblogic-enterprise-bean>
</weblogic-ejb-jar>
======================================================
So, it looks like this problem : http://forums.bea.com/bea/message.jspa?messageID=600018030&tstart=0
I just need a confirmation :
- is the "res-ref-name" format incorrect with '/' character ?
- is the jndi-name format incorrect with '.' character ?
Else, what is the problem with this DD ?
Thanks,
Rudy"shubha" <[email protected]> wrote:
>
hi ,
Ejb with ejb-name 'hellobean' in ejb-jar.xml
should be specified in weblogic-ejb-jar.xml with <weblogic-enterprise-bean></weblogic-enterprise-bean>
i am having problem in deploying the most simple bean on wls7.0 .
when i try to open the bean module with the weblogic builder i get the
following
message
weblogic.ejb20.WLDeploymentException: Could not locate bean with ejb-name
'hellobean'
in weblogic-ejb-jar.xml
at weblogic.ejb20.deployer.CompositeMBeanDescriptor.initialize60(CompositeMBeanDescriptor.java:249)
at weblogic.ejb20.deployer.CompositeMBeanDescriptor.init(CompositeMBeanDescriptor.java:180)
at weblogic.ejb20.deployer.CompositeMBeanDescriptor.<init>(CompositeMBeanDescriptor.java:171)
at weblogic.marathon.model.EJBJarCMBean.setup(EJBJarCMBean.java:408)
at weblogic.marathon.tasks.OpenModuleTask.figureOutModule(OpenModuleTask.java:76)
at weblogic.marathon.tasks.OpenModuleTask.figureOutModule(OpenModuleTask.java:109)
at weblogic.marathon.tasks.OpenModuleTask.runBackground(OpenModuleTask.java:64)
at weblogic.jellybeans.core.task.TaskThread.execute(TaskThread.java:114)
at weblogic.jellybeans.core.task.TaskThread.run(TaskThread.java:55)
Could not locate bean with ejb-name 'hellobean' in weblogic-ejb-jar.xml
Module hello1 descriptors failed to load
if anyone has come across the same problem and have debugged it please
help me
out
thanks in advance -
Missing listener-threads attribute in orion-ejb-jar.xml !!
Hi All,
I was trying to do some performance tuning as given in BPEL admin guide. For one of the BPEL property namely 'dspMaxThreads', guide says "Sum of dspMaxThreads of ALL domains should be <= the number of mdb listener threads on the workerbean". Now when i open <SOA_HOME>/j2ee/oc4j_soa/application-deployments/orabpel/orion-ejb-jar.xml and navigate to workerbean, i can not find any listener-threads attribute in message-driven-deployment tag.
<message-driven-deployment name="WorkerBean" min-instances="100" resource-adapter="BPELjms">
However there is a ReceiverThreads property set to 40.
<message-driven-deployment name="WorkerBean" min-instances="100" resource-adapter="BPELjms">
<config-property-name>ReceiverThreads</config-property-name>
<config-property-value>40</config-property-value>
</config-property>
</message-driven-deployment>
Now my question is that can i add listener-threads attribute to message-driven-deployment tag and then tune dspmaxthreads accordingly, Or
i can make use of ReceiverThreads property to match with dspmaxthreads property. I am really confused b/w listener-threads and ReceiverThreads.
Can anyone clarify the same ?
I have ORACLE SOA Suite ver 10.1.3.1 (with 10.1.3.3 patch) installed.
Thanks in advance.Jingzhi -- If you define the correct EJB-QL you should get the correct SQL generated for the finder. If that's not happening can you verify it against the OC4J v903 production release and see if it is still happening. I don't know if this helps with the JDeveloper problem specifically but if you don't need to create your own finders then that I hope should help.
Thanks -- Jeff -
JAVA Proxy :: Exception in ejb-jar.xml in NWDS
Hi All
I am getting exception while Importing (Inbound) JAVA Proxy ZIP file in NWDS, ejb-jar.xml shows the red cross & when I double click on it got following error -->
The content of element type "ejb-jar" is incomplete, it must match "(description?,display-name?,small-icon?,large-icon?,enterprise-beans,relationships?,assembly-descriptor?,ejb-client-jar?)".
I already add the following JAR files in class-path -->
aii_proxy_xirt.jar
aii_msg_runtime.jar
aii_utilxi_misc.jar
guidgenerator.jar
One different thing I also notice is that after adding these JAR files in classpath I am not getting my Inbound Interface BEAN under EJB candidates.
Also nothing is visible under ejbModule usually it shows 4 JAVA files & one template file.
As a solution I tried searching in google & forum for above exception, most threads suggest to add the Beans to xml files but I am not getting my interface Bean under EJB candidates.
I also tried reloading all the external JAR files again from System but still same issue.
Also within the same NWDS one another version of EJB is working fine but I worked on it 6months back, I tried copy its contents to ejb-jar.xml source code but then also nothing happens.
I am using NWDS Version: 7.0.10
Can you pls. suggest & let me know what further information I can provide from my side which can help you to investigate it.
Regards
Lalithi,
Your are using server java proxy.
You can use some other jar files apart from what you are using,.
ejb20.jar
exception.jar
sapj2eeclient.jar
and after importing your zip file (create a ejb project first ,then add the zar files and then click on the ejbModule and then import your zip file ) close and open your project.
Do not directly click on ejb-jar.xml.Click on ejbModule and import the .zip file.
then save your .template file in ejbModule as a .java project.
then there should not be any error.
you can refer
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/d06315a6-e66e-2910-039c-ba8bbbd23702
regards,
ujjwal kumar -
External Entity Problem w/ ejb-jar.xml
I cannot figure out nor find how to have the ejb-jar.xml refer to external entities
so that it doesn't get overly large and unmanageable. Note: our "shared-ejb-jar.xml"
gets converted into "ejb-jar.xml" inside of a deployed shared.jar file.
The shared-ejb-jar.xml file contains:
<!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans
2.0//EN' 'http://java.sun.com/dtd/ejb-jar_2_0.dtd'
<!ENTITY SatelliteExt SYSTEM "satellite-ext.xml">
]>
........XML code.........
&SatelliteExt;
........XML code.........
The satellite-ext.xml file is in the same directory and contains the XML to describe
a single <entity>...</entity>.
I use ant to compile and receive this error:
C:\jist\bin\build.xml:74: SAXException while parsing 'shared-ejb-jar.xml'. This
probably indicates badly-formed XML. Details: Relative URI "satellite-ext.xml";
can not be resolved without a document URI.
Any help will be most appreciated.
-- GuyProblem is resolved. Thanks for looking over this thread.
Regards
Karthik -
The DOCTYPE declaration in the ejb-jar.xml deployment descriptor is missing
Hello,
I want to create web service from ejb but everytime I want to do it, I get the following error:
I'm using NWDS 7.2 and JDK 1.6
[004]Deployment aborted
Settings
SDM host : XXX
SDM port : 50118
URL to deploy : file:/C:/DOCUME1/XXXX/LOCALS1/Temp/temp3760382784932063822XXXWSProjectEar.ear
Result
=> deployment aborted : file:/C:/DOCUME1/XXX/LOCALS1/Temp/temp3760382784932063822XXX/WSProjectEar.ear
Aborted: development component 'XXXWSProjectEar'/'sap.com'/'localhost'/'2011.01.06.15.48.31'/'0':
Caught exception during application deployment from SAP J2EE Engine's deploy service:
java.rmi.RemoteException: Cannot deploy application sap.com/XXXWSProjectEar.. Reason: The DOCTYPE declaration in the ejb-jar.xml deployment descriptor is missing. ; nested exception is: com.sap.engine.services.ejb.exceptions.deployment.EJBXMLParserException: The DOCTYPE declaration in the ejb-jar.xml deployment descriptor is missing.
(message ID: com.sap.sdm.serverext.servertype.inqmy.extern.EngineApplOnlineDeployerImpl.performAction(DeploymentActionTypes).REMEXC)
Deployment exception : The deployment of at least one item aborted
Can anyone tell me why am I getting this error.
Thnx for your help.
Best regards.Hello Decio Junior,
Actually yes, I resolved my problem.
I'm developing an EJB 3.0 project. I'm using NWDS 7.2 and JDK 1.6 as I said.
The problem is that my server was using JDK 1.4 and that was the problem.
EJB 1.1 and 2.1 need ejb-jar.xml but EJB 3.0 use the annotations instead.
Check your server JDK Version. It should be JDK 1.5 or higher.
Something else that you should check, in your project properties :
In the Build PATH : Use JDK 1.5
In the Java Compiler : Set the java compiler compliance level to 1.6 and check use default compliance settings
Hope it would help.
If you need more explanations, I'm here
Good luck. -
Use of externally-defined/ in weblogic-ejb-jar.xml
I am trying to use Global Roles defined via the Weblogic console to control access to EJB methods.
I am using the <externally-defined/> tag in security role assignments, however when I deploy to Weblogic I get the following error :
<8/09/2004 04:21:42 PM GMT+10:00> <Error> <Deployer> <BEA-149205> <Failed to initialize the application appsdirmars-marketdata_ear due to error weblogic.manag
ement.ApplicationException: Prepare failed. Task Id = null
Module Name: ejb-marketdata.jar, Error: [EJB:011024]The XML parser encountered an error in your deployment descriptor. Please ensure that your deployment descriptor corresponds to the format in the DTD. The error was:
Error parsing file 'META-INF/weblogic-ejb-jar.xml' at line: 51 column: 26. Element type "externally-defined" must be declared..
at weblogic.j2ee.J2EEApplicationContainer.checkForErrors(J2EEApplication
Container.java:1612)
at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContain
er.java:1207)
at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContain
er.java:1051)
at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContain
er.java:823)
at weblogic.management.deploy.slave.SlaveDeployer$Application.prepare(Sl
aveDeployer.java:2925)
at weblogic.management.deploy.slave.SlaveDeployer.prepareAllApplications
(SlaveDeployer.java:967)
at weblogic.management.deploy.slave.SlaveDeployer.resume(SlaveDeployer.j
ava:349)
at weblogic.management.deploy.DeploymentManagerServerLifeCycleImpl.resum
e(DeploymentManagerServerLifeCycleImpl.java:229)
at weblogic.t3.srvr.SubsystemManager.resume(SubsystemManager.java:131)
at weblogic.t3.srvr.T3Srvr.resume(T3Srvr.java:966)
at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:361)
at weblogic.Server.main(Server.java:32)
I am running Weblogic 8.1 SP3 on Windows XP Pro.
The XML is valid for the specified DTD according to my XML editor.
The relevevant fragment from weblogic-ejb-jar.xml is included below.
Any help much appreciated.
Gavin.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE weblogic-ejb-jar PUBLIC "-//BEA Systems, Inc.//DTD WebLogic 8.1.0 EJB//EN" "http://www.bea.com/servers/wls810/dtd/weblogic-ejb-jar.dtd">
<weblogic-ejb-jar>
<security-role-assignment>
<role-name>MarsAdmin</role-name>
<externally-defined/>
</security-role-assignment>
<security-role-assignment>
<role-name>MarsViewer</role-name>
<externally-defined/>
</security-role-assignment>
</weblogic-ejb-jar>I tried using the <global-role/> tag instead - this does deploy without any errors - but when I call the secure EJB method I get the Security Violation error below.
The DTD says using the <global-role/> tag is fine, albeit deprecated, but the Weblogic 8.1 manual says this has been replaced by <externally-defined/>, so I'm not sure if this should work or not.
[EJB:010160]Security Violation: User: 'ghughes' has insufficient permission to access EJB: type=<ejb>, application=_appsdir_mars-marketdata_ear, module=ejb-marketdata.jar, ejb=marketdata.MarketDataManager, method=getEnergyOverview, methodInterface=Remote, signature={java.util.Date}.
So on the whole I'd prefer to work out why Weblogic isn't recognising <externally-defined/> - I've included the full deployment descriptor below - I'm generating it using the latest snapshot of XDoclet - is the DTD specified correct for Weblogic 8.1 SP3 ? (It matches the one specified in http://e-docs.bea.com/wls/docs81/ejb/DDreference-ejb-jar.html - but I can't think of anything else that could be wrong).
Any tips much appreciated as I need to enable an administrator to customise these roles at runtime rather than hard-coding the role - group mappings into the deployment descriptors.
Thanks,
Gavin.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE weblogic-ejb-jar PUBLIC "-//BEA Systems, Inc.//DTD WebLogic 8.1.0 EJB//EN" "http://www.bea.com/servers/wls810/dtd/weblogic-ejb-jar.dtd">
<weblogic-ejb-jar>
<description><![CDATA[Generated by XDoclet]]></description>
<weblogic-enterprise-bean>
<ejb-name>marketdata.MarketDataManager</ejb-name>
<stateless-session-descriptor>
</stateless-session-descriptor>
<reference-descriptor>
</reference-descriptor>
<jndi-name>marketdata.MarketDataManager</jndi-name>
<local-jndi-name>marketdata.MarketDataManagerLocal</local-jndi-name>
</weblogic-enterprise-bean>
<weblogic-enterprise-bean>
<ejb-name>marketdata.MessageManager</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>5</max-beans-in-free-pool>
<initial-beans-in-free-pool>1</initial-beans-in-free-pool>
</pool>
<destination-jndi-name>FileTopic</destination-jndi-name>
<connection-factory-jndi-name>JMSConnectionFactory</connection-factory-jndi-name>
<jms-polling-interval-seconds>10</jms-polling-interval-seconds>
<jms-client-id>1</jms-client-id>
</message-driven-descriptor>
<transaction-descriptor>
<trans-timeout-seconds>10</trans-timeout-seconds>
</transaction-descriptor>
<reference-descriptor>
</reference-descriptor>
<enable-call-by-reference>True</enable-call-by-reference>
</weblogic-enterprise-bean>
<!--
To add enterprise beans that you have deployment descriptor info for, add
a file to your XDoclet merge directory called weblogic-enterprise-beans.xml that contains
the <weblogic-enterprise-bean></weblogic-enterprise-bean> markup for those beans.
-->
<!-- xdoclet merge file -> weblogic-ejb-jar.xml -->
<security-role-assignment>
<role-name>MarsAdmin</role-name>
<externally-defined/>
</security-role-assignment>
<security-role-assignment>
<role-name>MarsViewer</role-name>
<externally-defined/>
</security-role-assignment>
<idempotent-methods>
</idempotent-methods>
</weblogic-ejb-jar>
Message was edited by [email protected] at Sep 8, 2004 8:45 PM -
How to add environment entry in EJB3 ejb-jar.xml
Hi,
Is that a build in way of add environment entries in JDev for EJB 3 beans? For EJB 2 beans you can do that using properties. But the bean properties is not available in EJB 3. Please help.
Thanks
KennyThank you for the reply. But I need a way to enter env-entry value in ejb-jar.xml for EJB 3 in Jdev. In EJB 2, Jdev generate ejb-jar.xml for the bean and also let you add env-entry through bean's properties menu. But in there in no properties menu for EJB 3, also generated ejb-jar.xml is only a empty file doesn't contain any EJB depolyment information. That means you have to code ejb-jar.xml all manually.
If I am wrong, can someone show me how to do this right? -
ejb-local-ref where to put this tag in ejb-jar.xml ??
I have an ejb-jar.xml that looks like this. I have had no problem with remote interfaces. Now I want the bean to have a local interface too.
Just let me know where the tag I have mentioned for the <ejb-local-ref> has to be put into.
When I compile this file it throws me an error which i have shown below the output of the ejb-jar.xml file
<ejb-jar>
<enterprise-beans>
<entity>
<ejb-name>IDMaster</ejb-name>
<home>maxateev.mondial.brg.idmaster.IDMasterHome</home>
<remote>maxateev.mondial.brg.idmaster.IDMaster</remote>
<local-home>maxateev.mondial.brg.idmaster.IDMasterLocalHome</local-home>
<local>maxateev.mondial.brg.idmaster.IDMasterLocal</local>
<ejb-class>maxateev.mondial.brg.idmaster.IDMasterEJB</ejb-class>
<persistence-type>Container</persistence-type>
<ejb-local-ref>
<ejb-ref-name>ejb/IDMasterLocalHome</ejb-ref-name>
<ejb-ref-type>Entity</ejb-ref-type>
<local-home>maxateev.mondial.brg.idmaster.IDMasterLocalHome</local-home>
<local>maxateev.mondial.brg.idmaster.IDMasterLocal</local>
</ejb-local-ref>
<prim-key-class>java.lang.String</prim-key-class>
<reentrant>False</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>IDMaster</abstract-schema-name>
<cmp-field>
<field-name>idPrefix</field-name>
</cmp-field>
<cmp-field>
<field-name>idValue</field-name>
</cmp-field>
<primkey-field>idPrefix</primkey-field>
<query>
<query-method>
<method-name>findAllIDMasters</method-name>
<method-params/>
</query-method>
<ejb-ql><![CDATA[SELECT OBJECT (f) FROM IDMaster as f]]></ejb-ql>
</query>
</entity>
</enterprise-beans>
<assembly-descriptor>
<container-transaction>
<method>
<ejb-name>IDMaster</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
</assembly-descriptor>
</ejb-jar>
I have also added the following tag in the weblogic-jar.xml
<local-jndi-name>IDMasterEJB.IDMasterLocalHome</local-jndi-name>
Just let me know whether I am correct
On compilation (using ant utility) the error thrown is like this :
ejbc:
[java] ERROR: Error parsing 'ejb-jar.xml' line 47: The content of element type "entity" must ma
tch "(description?,display-name?,small-icon?,large-icon?,ejb-name,home?,remote?,local-home?,local?,e
jb-class,persistence-type,prim-key-class,reentrant,cmp-version?,abstract-schema-name?,cmp-field*,pri
mkey-field?,env-entry*,ejb-ref*,ejb-local-ref*,security-role-ref*,security-identity?,resource-ref*,r
esource-env-ref*,query*)".
[java] ERROR: ejbc found errors
[java] Java Result: 1
Kindly Help !!!
Thanks n regards
SajivThis should take care of it
<ejb-jar>
<enterprise-beans>
<entity>
<ejb-name>IDMaster</ejb-name>
<home>maxateev.mondial.brg.idmaster.IDMasterHome</home>
<remote>maxateev.mondial.brg.idmaster.IDMaster</remote>
<local-home>maxateev.mondial.brg.idmaster.IDMasterLocalHome</local-home>
<local>maxateev.mondial.brg.idmaster.IDMasterLocal</local>
<ejb-class>maxateev.mondial.brg.idmaster.IDMasterEJB</ejb-class>
<persistence-type>Container</persistence-type>
<ejb-local-ref>
<ejb-ref-name>ejb/IDMasterLocalHome</ejb-ref-name>
<ejb-ref-type>Entity</ejb-ref-type>
<local-home>maxateev.mondial.brg.idmaster.IDMasterLocalHome</local-home>
<local>maxateev.mondial.brg.idmaster.IDMasterLocal</local>
</ejb-local-ref>
<prim-key-class>java.lang.String</prim-key-class>
<reentrant>False</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>IDMaster</abstract-schema-name>
<cmp-field>
<field-name>idPrefix</field-name>
</cmp-field>
<cmp-field>
<field-name>idValue</field-name>
</cmp-field>
<primkey-field>idPrefix</primkey-field>
<ejb-local-ref>
<ejb-ref-name>ejb/IDMasterLocalHome</ejb-ref-name>
<ejb-ref-type>Entity</ejb-ref-type>
<local-home>maxateev.mondial.brg.idmaster.IDMasterLocalHome</local-home>
<local>maxateev.mondial.brg.idmaster.IDMasterLocal</local>
</ejb-local-ref>
<query>
<query-method>
<method-name>findAllIDMasters</method-name>
<method-params/>
</query-method>
<ejb-ql><![CDATA[SELECT OBJECT (f) FROM IDMaster as f]]></ejb-ql>
</query>
</entity>
</enterprise-beans>
<assembly-descriptor>
<container-transaction>
<method>
<ejb-name>IDMaster</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
</assembly-descriptor>
</ejb-jar> -
JNDI and env. vars. in ejb-jar.xml
I have been trying for several days now to have my EJB session bean access
its env. vars. stored in the ejb-jar.xml document. I have been unsuccessful.
The only place I have been able to store my env. vars. is in the web.xml
document outside my .jar file. Although workable, it would be preferable to
store them in the ejb-jar.xml document in my .jar file.
I am hoping some one can help me. I am using the following code in my ejb:
Context init = new InitialContext();
Context env = (Context)init.lookup("java:comp/env");
m_bTruncCorporate =
((Boolean)env.lookup(MICRworks.MICR_ENV_TRUNCORP)).booleanValue();
m_strOptPath = (String)env.lookup(MICRworks.MICR_ENV_OPFLPATH);
m_strOptAccount = (String)env.lookup(MICRworks.MICR_ENV_OPFLACCT);
m_strOptRouting = (String)env.lookup(MICRworks.MICR_ENV_OPFLROUT);
My ejb-jar.xml follows:
<!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>
<ejb-name>MICRworksBean</ejb-name>
<home>USDataworks.MICRworks.MICRworksHome</home>
<remote>USDataworks.MICRworks.MICRworks</remote>
<ejb-class>USDataworks.MICRworks.MICRworksBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
<env-entry>
<description>Flag indicating whether to convert corporate
checks</description>
<env-entry-name>TruncateCorporate</env-entry-name>
<env-entry-type>java.lang.Boolean</env-entry-type>
<env-entry-value>true</env-entry-value>
</env-entry>
<env-entry>
<description>Location of the 1For1 exclusion files</description>
<env-entry-name>OptionFilePath</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>http://localhost:7001/MICRworksLite/files/</env-entry-value
>
</env-entry>
<env-entry>
<description>Name of the 1For1 account exclusions file</description>
<env-entry-name>OptionFileAccount</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>account_file.txt</env-entry-value>
</env-entry>
<env-entry>
<description>Name of the 1For1 routing exclusion file</description>
<env-entry-name>OptionFileRouting</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>routing_file.txt</env-entry-value>
</env-entry>
</session>
</enterprise-beans>
<assembly-descriptor>
<container-transaction>
<method>
<ejb-name>MICRworksBean</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Supports</trans-attribute>
</container-transaction>
</assembly-descriptor>
</ejb-jar>
and my weblogic-ejb-jar.xml:
<!DOCTYPE weblogic-ejb-jar PUBLIC '-//BEA Systems, Inc.//DTD WebLogic 7.0.0
EJB//EN' 'http://www.bea.com/servers/wls700/dtd/weblogic-ejb-jar.dtd'>
<weblogic-ejb-jar>
<weblogic-enterprise-bean>
<ejb-name>MICRworksBean</ejb-name>
<stateless-session-descriptor>
<pool>
</pool>
<stateless-clustering>
</stateless-clustering>
</stateless-session-descriptor>
<transaction-descriptor>
</transaction-descriptor>
<jndi-name>MICRworksBean</jndi-name>
</weblogic-enterprise-bean>
</weblogic-ejb-jar>
My feeling is that I am missing some sort of reference in the
weblogic-ejb-jar.xml that points to the ejb-jar.xml but I have tried several
things without success.
I would appreciate any help I can get...especially if it contains specific
code I can use as I am rather new to writing and deploying ejbs!
Thanx in advance. Marek :-)Thanks for the reference. I was using another book as a reference (Using
Java 2 Enterprise Edition by Mark Wutka) which had the same sort of example
and as you can see below, I coded my bean as they suggest...I'm still unable
to access the env. vars.!
I deployed by bean using WebLogic's Builder and but didn't create any sort
of application. I let WebLogic do what it would on its own. The WebLogic
documentation seemed to indicate for simple testing this would work
fine...is it wrong?
btw. MICRworks.MICR_ENV_TRUNCORP equates to "TruncateCorporate" as you
probably guessed.
The WebLogic Admin Console shows the environment variables in the EJB
Descriptors for my EJB but they do not show up when I view the JNDI tree for
my server. I have taken this to mean that the deployment tool is not
binding my env. vars. for some reason which would explain why my bean can't
find them.
I know it must be something stupid I am doing (or not doing) but I just
can't see it. Please help!
"Ryan LeCompte" <[email protected]> wrote in message
news:[email protected]...
>
Hello Marek,
I would suggest that you download the free book "Mastering EJB 2ndEdition" by
Ed Roman, Scott Ambler, and Tyler Jewell. The source code for the book isalso
freely available and is meant to be deployed specifically on WebLogic.Look for
a sample application called "Jasmine", which shows how to use environmententries.
You will see a concrete example of how they are defined and later accessedfrom
within EJBs. The book and source code are available at the followingaddress:
>
http://www.theserverside.com/books/masteringEJB/index.jsp
Best regards,
Ryan LeCompte
[email protected]
http://www.louisiana.edu/~rml7669
"Marek Kossak" <[email protected]> wrote:
I have been trying for several days now to have my EJB session bean
access
its env. vars. stored in the ejb-jar.xml document. I have beenunsuccessful.
The only place I have been able to store my env. vars. is in the web.xml
document outside my .jar file. Although workable, it would be preferable
to
store them in the ejb-jar.xml document in my .jar file.
I am hoping some one can help me. I am using the following code in my
ejb:
Context init = new InitialContext();
Context env = (Context)init.lookup("java:comp/env");
m_bTruncCorporate =
((Boolean)env.lookup(MICRworks.MICR_ENV_TRUNCORP)).booleanValue();
m_strOptPath = (String)env.lookup(MICRworks.MICR_ENV_OPFLPATH);
m_strOptAccount = (String)env.lookup(MICRworks.MICR_ENV_OPFLACCT);
m_strOptRouting = (String)env.lookup(MICRworks.MICR_ENV_OPFLROUT);
My ejb-jar.xml follows:
<!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>
<ejb-name>MICRworksBean</ejb-name>
<home>USDataworks.MICRworks.MICRworksHome</home>
<remote>USDataworks.MICRworks.MICRworks</remote>
<ejb-class>USDataworks.MICRworks.MICRworksBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
<env-entry>
<description>Flag indicating whether to convert corporate
checks</description>
<env-entry-name>TruncateCorporate</env-entry-name>
<env-entry-type>java.lang.Boolean</env-entry-type>
<env-entry-value>true</env-entry-value>
</env-entry>
<env-entry>
<description>Location of the 1For1 exclusion files</description>
<env-entry-name>OptionFilePath</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>http://localhost:7001/MICRworksLite/files/</env-entry-valu
e
>>>
</env-entry>
<env-entry>
<description>Name of the 1For1 account exclusions file</description>
<env-entry-name>OptionFileAccount</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>account_file.txt</env-entry-value>
</env-entry>
<env-entry>
<description>Name of the 1For1 routing exclusion file</description>
<env-entry-name>OptionFileRouting</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>routing_file.txt</env-entry-value>
</env-entry>
</session>
</enterprise-beans>
<assembly-descriptor>
<container-transaction>
<method>
<ejb-name>MICRworksBean</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Supports</trans-attribute>
</container-transaction>
</assembly-descriptor>
</ejb-jar>
and my weblogic-ejb-jar.xml:
<!DOCTYPE weblogic-ejb-jar PUBLIC '-//BEA Systems, Inc.//DTD WebLogic
7.0.0
EJB//EN' 'http://www.bea.com/servers/wls700/dtd/weblogic-ejb-jar.dtd'>
<weblogic-ejb-jar>
<weblogic-enterprise-bean>
<ejb-name>MICRworksBean</ejb-name>
<stateless-session-descriptor>
<pool>
</pool>
<stateless-clustering>
</stateless-clustering>
</stateless-session-descriptor>
<transaction-descriptor>
</transaction-descriptor>
<jndi-name>MICRworksBean</jndi-name>
</weblogic-enterprise-bean>
</weblogic-ejb-jar>
My feeling is that I am missing some sort of reference in the
weblogic-ejb-jar.xml that points to the ejb-jar.xml but I have tried
several
things without success.
I would appreciate any help I can get...especially if it containsspecific
code I can use as I am rather new to writing and deploying ejbs!
Thanx in advance. Marek :-)
Maybe you are looking for
-
Cannot install extension in Dreamweaver CS3
I just purchased an image gallery extension from the exchange. The instructions say that I need to run the extension manager to install it. When I do it I get an error message saying: "This extension cannot be installed, it requires Dreamweaver 7 or
-
why my iphone are not responding after i update the latest ios? and the screen displaying itunes icon
-
Chinese characters dont show up on the PDF file
Hi guys, Chinese characters dont show up on the PDF file. Its #. Please let know how to fix it. Thanks!
-
View dimension hierarchy using the filter property of data form
Hi, I created a data form where I want to show the dimension hierarchy. But when I am filtering the form using attribute dimension then the hierarchy is not being shown in the form.Is their any way so that I can use the filter property also and make
-
I paint a listbox on screen . I want to show three fields in the listbox . But only 2 field can be showed in the listbox. why? The source code is : module set_datalist input. data:begin of itab occurs 0, BNAME like USR02-BNAME, GLTGV like usr