[JBoss jBPM] - jBPM 3.2.6.SP1 on Weblogic 11gR1
by gchanteb
Hi,
I'm trying to put jBPM 3.2.6.SP1 running on JBoss AS 5.1.0.GA on Weblogic 11gR1.
There are 3 projects:
- a) jbpm-service.sar
- b) jbpm-enterprise.jar
- c) jsf-console.war
There are 8 xml files:
- 1) jbpm-destinations-service.xml
- 2) ejb2-timer-service.xml
- 3) jbpm-xa-ds.xml
- 4) ejb-jar.xml
- 5) jbosscmp-jdbc.xml
- 6) jboss.xml
- 7) jboss-service.xml
- 8) jboss-web.xml
So....
- a) the .sar is specific JBoss. I have just put the jbpm-jpdl.jar in the ${Weblogic-domain}/lib directory.
- b) Then, i'm trying to deploy the jbpm-enterprise.jar.
- 1) I have created on Weblogic a jms connection factory and all queues, it's ok.
- 2) I don't know for the timer for the moment.
- 3) I have created on Weblogic a XA DS, it's ok.
- 4) ejb-jar.xml is the same on JBoss and Weblogic.
- 5) jbosscmp-jdbc.xml must be translated to weblogic-cmp-rdbms-jar.xml, I think it's ok:
<?xml version="1.0" encoding="UTF-8"?>
| <!DOCTYPE weblogic-rdbms-jar PUBLIC
| '-//BEA Systems, Inc.//DTD WebLogic 8.1.0 EJB RDBMS Persistence//EN'
| 'http://www.bea.com/servers/wls810/dtd/weblogic-rdbms20-persistence-810.dtd'>
|
| <weblogic-rdbms-jar>
|
| <weblogic-rdbms-bean>
| <ejb-name>TimerEntityBean</ejb-name>
| <data-source-name>java:/Your DS</data-source-name>
| <table-map>
| <table-name>JBPM_JOB</table-name>
| <field-map>
| <cmp-field>timerId</cmp-field>
| <dbms-column>ID_</dbms-column>
| </field-map>
| <field-map>
| <cmp-field>name</cmp-field>
| <dbms-column>NAME_</dbms-column>
| </field-map>
| <field-map>
| <cmp-field>tokenId</cmp-field>
| <dbms-column>TOKEN_</dbms-column>
| </field-map>
| <field-map>
| <cmp-field>processInstanceId</cmp-field>
| <dbms-column>PROCESSINSTANCE_</dbms-column>
| </field-map>
| <field-map>
| <cmp-field>discriminator</cmp-field>
| <dbms-column>CLASS_</dbms-column>
| </field-map>
| </table-map>
| </weblogic-rdbms-bean>
|
| <create-default-dbms-tables>Disabled</create-default-dbms-tables>
|
| </weblogic-rdbms-jar>
- 6) jboss.xml must be translated to weblogic-ejb-jar.xml.
Here is my jboss.xml
<?xml version="1.0" encoding="UTF-8"?>
| <!DOCTYPE jboss PUBLIC
| "-//JBoss//DTD JBOSS 4.0//EN"
| "http://www.jboss.org/j2ee/dtd/jboss_4_0.dtd">
|
| <jboss>
|
| <enterprise-beans>
|
| <session>
| <ejb-name>CommandServiceBean</ejb-name>
| <jndi-name>jbpm/CommandServiceBean</jndi-name>
| <local-jndi-name>java:jbpm/CommandServiceBean</local-jndi-name>
| <resource-ref>
| <res-ref-name>jdbc/JbpmDataSource</res-ref-name>
| <jndi-name>java:/YOUR DS</jndi-name>
| </resource-ref>
| <resource-ref>
| <res-ref-name>jms/JbpmConnectionFactory</res-ref-name>
| <jndi-name>java:JmsXA</jndi-name>
| </resource-ref>
| </session>
|
| <message-driven>
| <ejb-name>CommandListenerBean</ejb-name>
| <resource-ref>
| <res-ref-name>jms/JbpmConnectionFactory</res-ref-name>
| <jndi-name>java:JmsXA</jndi-name>
| </resource-ref>
| <message-destination-ref>
| <message-destination-ref-name>jms/DeadLetterQueue</message-destination-ref-name>
| <jndi-name>queue/DLQ</jndi-name>
| </message-destination-ref>
| </message-driven>
|
| <message-driven>
| <ejb-name>JobListenerBean</ejb-name>
| <resource-ref>
| <res-ref-name>jms/JbpmConnectionFactory</res-ref-name>
| <jndi-name>java:JmsXA</jndi-name>
| </resource-ref>
| <message-destination-ref>
| <message-destination-ref-name>jms/DeadLetterQueue</message-destination-ref-name>
| <jndi-name>queue/DLQ</jndi-name>
| </message-destination-ref>
| </message-driven>
|
| <entity>
| <ejb-name>TimerEntityBean</ejb-name>
| <jndi-name>jbpm/TimerEntityBean</jndi-name>
| <local-jndi-name>java:jbpm/TimerEntityBean</local-jndi-name>
| </entity>
|
| </enterprise-beans>
|
| <assembly-descriptor>
|
| <message-destination>
| <message-destination-name>JobQueue</message-destination-name>
| <jndi-name>queue/JbpmJobQueue</jndi-name>
| </message-destination>
| <message-destination>
| <message-destination-name>CommandQueue</message-destination-name>
| <jndi-name>queue/JbpmCommandQueue</jndi-name>
| </message-destination>
|
| </assembly-descriptor>
|
| </jboss>
Here is my weblogic-ejb-jar.xml:
<?xml version="1.0" encoding="UTF-8"?>
|
| <weblogic-ejb-jar xmlns="http://www.bea.com/ns/weblogic/weblogic-ejb-jar/1.0/weblogic-ejb-jar.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
| xsi:schemaLocation="http://www.bea.com/ns/weblogic/weblogic-ejb-jar/1.0/weblogic-ejb-jar.xsd http://www.bea.com/ns/weblogic/weblogic-ejb-jar/1.0/weblogic-ejb-jar.xsd ">
|
| <weblogic-enterprise-bean>
| <ejb-name>CommandServiceBean</ejb-name>
| <resource-description>
| <res-ref-name>jdbc/JbpmDataSource</res-ref-name>
| <jndi-name>java:/YOUR DS</jndi-name>
| </resource-description>
| <resource-description>
| <res-ref-name>jms/JbpmConnectionFactory</res-ref-name>
| <jndi-name>java:JmsXA</jndi-name>
| </resource-description>
| <jndi-name>jbpm/CommandServiceBean</jndi-name>
| <local-jndi-name>java:jbpm/CommandServiceBean</local-jndi-name>
| </weblogic-enterprise-bean>
|
| <weblogic-enterprise-bean>
| <ejb-name>TimerEntityBean</ejb-name>
| <entity-descriptor>
| <persistence>
| <persistence-use>
| <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
| <type-version>7.0</type-version>
| <type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage>
| </persistence-use>
| </persistence>
| </entity-descriptor>
| <jndi-name>jbpm/TimerEntityBean</jndi-name>
| <local-jndi-name>java:jbpm/TimerEntityBean</local-jndi-name>
| </weblogic-enterprise-bean>
|
| <weblogic-enterprise-bean>
| <ejb-name>JobListenerBean</ejb-name>
| <resource-description>
| <res-ref-name>jms/JbpmConnectionFactory</res-ref-name>
| <jndi-name>java:JmsXA</jndi-name>
| </resource-description>
| </weblogic-enterprise-bean>
|
| <weblogic-enterprise-bean>
| <ejb-name>CommandListenerBean</ejb-name>
| <resource-description>
| <res-ref-name>jms/JbpmConnectionFactory</res-ref-name>
| <jndi-name>java:JmsXA</jndi-name>
| </resource-description>
| </weblogic-enterprise-bean>
|
| <message-destination-descriptor>
| <message-destination-name>JobQueue</message-destination-name>
| <destination-jndi-name>queue/JbpmJobQueue</destination-jndi-name>
| </message-destination-descriptor>
|
| <message-destination-descriptor>
| <message-destination-name>CommandQueue</message-destination-name>
| <destination-jndi-name>queue/JbpmCommandQueue</destination-jndi-name>
| </message-destination-descriptor>
|
| </weblogic-ejb-jar>
It's 80% OK but I have some problems with MDBs:
anonymous wrote :
| weblogic.ejb.container.compliance.ComplianceException:
|
| The message-destination-ref 'jms/DeadLetterQueue' declared in the ejb-jar.xml descriptor or corresponding annotation for EJB 'JobListenerBean'
| is not linked to a message-destination. Ensure there is a message-destination declaration for the target destination and use
| the message-destination-link element or corresponding annotation to link the message-destination-ref.
Can somebody help me to finish to translate this file in order to make jBPM work on Weblogic?
The work to do is to translate:
<message-driven>
| <ejb-name>JobListenerBean</ejb-name>
| <resource-ref>
| <res-ref-name>jms/JbpmConnectionFactory</res-ref-name>
| <jndi-name>java:JmsXA</jndi-name>
| </resource-ref>
| <message-destination-ref>
| <message-destination-ref-name>jms/DeadLetterQueue</message-destination-ref-name>
| <jndi-name>queue/DLQ</jndi-name>
| </message-destination-ref>
| </message-driven>
I don't find how to put a message-destination-ref-name in weblogic-ejb-jar.xml....
Here is the weblogic-ejb-jar.xml documentation in case, http://edocs.bea.com/wls/docs103/ejb/DDreference-ejb-jar.html#wp1383914
- 7) it doesn't exist on weblogic, so it's ok.
- 8) jboss-web.xml must be translated to weblogic.xml, I have this:
<weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/90"
| xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
| xsi:schemaLocation="http://www.bea.com/ns/weblogic/90 http://www.bea.com/ns/weblogic/90/weblogic-web-app.xsd
| http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
| <jsp-descriptor>
| <debug>true</debug>
| </jsp-descriptor>
| <context-root>jbpm-console</context-root>
| </weblogic-web-app>
Thx
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4247527#4247527
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4247527
16 years, 8 months
[JBoss jBPM] - What is the difference between a
by prajatna
As mentioned in documentation..
TASK NODE
A task node represents one or more tasks that are to be performed by humans. So when execution arrives in a task node, task instances will be created in the task lists of the workflow participants. After that, the node will behave as a wait state. So when the users perform their task, the task completion will trigger the resuming of the execution. In other words, that leads to a new signal being called on the token.
NODE
The type node serves the situation where you want to write your own code in a node. The nodetype node expects one subelement action. The action is executed when the execution arrives in the node. The code you write in the actionhandler can do anything you want but it is also responsible for propagating the execution.
But confusion is that, where to use task node , and where a node.. Coz in both the case required acton is being written inside a handler class....
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4247517#4247517
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4247517
16 years, 8 months