You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by gn...@apache.org on 2006/12/15 10:43:06 UTC
svn commit: r487499 - in
/incubator/servicemix/trunk/common/servicemix-components/src:
main/java/org/apache/servicemix/components/jms/
test/resources/org/apache/servicemix/components/jca/
Author: gnodet
Date: Fri Dec 15 01:43:05 2006
New Revision: 487499
URL: http://svn.apache.org/viewvc?view=rev&rev=487499
Log:
SM-778: JCAFlow stopped working after updating to 3.1 snapshot
Modified:
incubator/servicemix/trunk/common/servicemix-components/src/main/java/org/apache/servicemix/components/jms/JmsInBinding.java
incubator/servicemix/trunk/common/servicemix-components/src/main/java/org/apache/servicemix/components/jms/JmsInUsingJCABinding.java
incubator/servicemix/trunk/common/servicemix-components/src/test/resources/org/apache/servicemix/components/jca/example.xml
incubator/servicemix/trunk/common/servicemix-components/src/test/resources/org/apache/servicemix/components/jca/exampleWithXA.xml
incubator/servicemix/trunk/common/servicemix-components/src/test/resources/org/apache/servicemix/components/jca/xa-on-jca-flow.xml
Modified: incubator/servicemix/trunk/common/servicemix-components/src/main/java/org/apache/servicemix/components/jms/JmsInBinding.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/common/servicemix-components/src/main/java/org/apache/servicemix/components/jms/JmsInBinding.java?view=diff&rev=487499&r1=487498&r2=487499
==============================================================================
--- incubator/servicemix/trunk/common/servicemix-components/src/main/java/org/apache/servicemix/components/jms/JmsInBinding.java (original)
+++ incubator/servicemix/trunk/common/servicemix-components/src/main/java/org/apache/servicemix/components/jms/JmsInBinding.java Fri Dec 15 01:43:05 2006
@@ -42,6 +42,21 @@
private static final Log log = LogFactory.getLog(JmsInBinding.class);
private JmsMarshaler marshaler = new JmsMarshaler();
+ private boolean synchronous = false;
+
+ /**
+ * @return the synchronous
+ */
+ public boolean isSynchronous() {
+ return synchronous;
+ }
+
+ /**
+ * @param synchronous the synchronous to set
+ */
+ public void setSynchronous(boolean synchronous) {
+ this.synchronous = synchronous;
+ }
public JmsMarshaler getMarshaler() {
return marshaler;
@@ -64,7 +79,11 @@
marshaler.toNMS(inMessage, jmsMessage);
messageExchange.setInMessage(inMessage);
- getDeliveryChannel().send(messageExchange);
+ if (synchronous) {
+ getDeliveryChannel().sendSync(messageExchange);
+ } else {
+ getDeliveryChannel().send(messageExchange);
+ }
}
catch (JMSException e) {
messageExchange.setError(e);
Modified: incubator/servicemix/trunk/common/servicemix-components/src/main/java/org/apache/servicemix/components/jms/JmsInUsingJCABinding.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/common/servicemix-components/src/main/java/org/apache/servicemix/components/jms/JmsInUsingJCABinding.java?view=diff&rev=487499&r1=487498&r2=487499
==============================================================================
--- incubator/servicemix/trunk/common/servicemix-components/src/main/java/org/apache/servicemix/components/jms/JmsInUsingJCABinding.java (original)
+++ incubator/servicemix/trunk/common/servicemix-components/src/main/java/org/apache/servicemix/components/jms/JmsInUsingJCABinding.java Fri Dec 15 01:43:05 2006
@@ -23,18 +23,20 @@
import org.jencks.JCAConnector;
import org.jencks.JCAContainer;
import org.jencks.SingletonEndpointFactory;
+import org.springframework.beans.factory.BeanNameAware;
/**
* Uses the JCA Container for better inbound subscription.
*
* @version $Revision$
*/
-public class JmsInUsingJCABinding extends JmsInBinding {
+public class JmsInUsingJCABinding extends JmsInBinding implements BeanNameAware {
private JCAContainer jcaContainer;
private ActivationSpec activationSpec;
private TransactionManager transactionManager;
private JCAConnector jcaConnector;
+ private String name;
protected void init() throws JBIException {
if (jcaContainer == null) {
@@ -51,7 +53,9 @@
if (transactionManager != null) {
jcaConnector.setTransactionManager(transactionManager);
}
- jcaConnector.setEndpointFactory(new SingletonEndpointFactory(this, transactionManager));
+ SingletonEndpointFactory ef = new SingletonEndpointFactory(this, transactionManager);
+ ef.setName(name);
+ jcaConnector.setEndpointFactory(ef);
try {
jcaConnector.afterPropertiesSet();
} catch (Exception e) {
@@ -104,5 +108,9 @@
public JCAConnector getJcaConnector() {
return jcaConnector;
+ }
+
+ public void setBeanName(String name) {
+ this.name = name;
}
}
Modified: incubator/servicemix/trunk/common/servicemix-components/src/test/resources/org/apache/servicemix/components/jca/example.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/common/servicemix-components/src/test/resources/org/apache/servicemix/components/jca/example.xml?view=diff&rev=487499&r1=487498&r2=487499
==============================================================================
--- incubator/servicemix/trunk/common/servicemix-components/src/test/resources/org/apache/servicemix/components/jca/example.xml (original)
+++ incubator/servicemix/trunk/common/servicemix-components/src/test/resources/org/apache/servicemix/components/jca/example.xml Fri Dec 15 01:43:05 2006
@@ -19,7 +19,7 @@
-->
<!-- START SNIPPET: config -->
<beans xmlns:sm="http://servicemix.apache.org/config/1.0"
- xmlns:foo="http://servicemix.org/cheese/">
+ xmlns:foo="http://servicemix.org/cheese/">
<!--
|| ActiveMQ Broker
@@ -35,6 +35,7 @@
<property name="bootstrapContext">
<bean class="org.jencks.factory.BootstrapContextFactoryBean">
<property name="threadPoolSize" value="25"/>
+ <property name="transactionManager" ref="transactionManager"/>
</bean>
</property>
@@ -47,9 +48,13 @@
</property>
</bean>
<!-- END SNIPPET: jca -->
+
+ <bean id="transactionManager" class="org.jencks.factory.TransactionManagerFactoryBean">
+ <property name="transactionLogDir" value="target/txlog"/>
+ </bean>
<!-- the JBI container -->
- <sm:container id="jbi" depends-on="broker" embedded="true">
+ <sm:container id="jbi" depends-on="broker" embedded="true" transactionManager="#transactionManager">
<sm:activationSpecs>
<sm:activationSpec componentName="myJmsSender" service="foo:myJmsSender">
Modified: incubator/servicemix/trunk/common/servicemix-components/src/test/resources/org/apache/servicemix/components/jca/exampleWithXA.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/common/servicemix-components/src/test/resources/org/apache/servicemix/components/jca/exampleWithXA.xml?view=diff&rev=487499&r1=487498&r2=487499
==============================================================================
--- incubator/servicemix/trunk/common/servicemix-components/src/test/resources/org/apache/servicemix/components/jca/exampleWithXA.xml (original)
+++ incubator/servicemix/trunk/common/servicemix-components/src/test/resources/org/apache/servicemix/components/jca/exampleWithXA.xml Fri Dec 15 01:43:05 2006
@@ -34,6 +34,7 @@
<property name="bootstrapContext">
<bean class="org.jencks.factory.BootstrapContextFactoryBean">
<property name="threadPoolSize" value="25"/>
+ <property name="transactionManager" ref="transactionManager"/>
</bean>
</property>
@@ -48,7 +49,9 @@
<!-- END SNIPPET: jca -->
<!-- START SNIPPET: tm -->
- <bean id="transactionManager" class="org.jencks.factory.TransactionManagerFactoryBean"/>
+ <bean id="transactionManager" class="org.jencks.factory.TransactionManagerFactoryBean">
+ <property name="transactionLogDir" value="target/txlog" />
+ </bean>
<!-- END SNIPPET: tm -->
<!-- the JBI container -->
@@ -82,6 +85,7 @@
<!-- use XA transactions -->
<property name="transactionManager" ref="transactionManager"/>
+ <property name="synchronous" value="true"/>
</bean></sm:component>
</sm:activationSpec>
<!-- END SNIPPET: receive -->
Modified: incubator/servicemix/trunk/common/servicemix-components/src/test/resources/org/apache/servicemix/components/jca/xa-on-jca-flow.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/common/servicemix-components/src/test/resources/org/apache/servicemix/components/jca/xa-on-jca-flow.xml?view=diff&rev=487499&r1=487498&r2=487499
==============================================================================
--- incubator/servicemix/trunk/common/servicemix-components/src/test/resources/org/apache/servicemix/components/jca/xa-on-jca-flow.xml (original)
+++ incubator/servicemix/trunk/common/servicemix-components/src/test/resources/org/apache/servicemix/components/jca/xa-on-jca-flow.xml Fri Dec 15 01:43:05 2006
@@ -34,6 +34,7 @@
<property name="bootstrapContext">
<bean class="org.jencks.factory.BootstrapContextFactoryBean">
<property name="threadPoolSize" value="25"/>
+ <property name="transactionManager" ref="transactionManager" />
</bean>
</property>
@@ -48,24 +49,25 @@
<!-- END SNIPPET: jca -->
<!-- START SNIPPET: tm -->
- <bean id="transactionContextManager" class="org.jencks.factory.TransactionContextManagerFactoryBean"/>
- <bean id="userTransaction" class="org.jencks.factory.GeronimoTransactionManagerFactoryBean" />
+ <bean id="transactionManager" class="org.jencks.factory.TransactionManagerFactoryBean">
+ <property name="transactionLogDir" value="target/txlog" />
+ </bean>
<!-- END SNIPPET: tm -->
<!-- the JBI container -->
- <sm:container id="jbi" depends-on="broker" embedded="true">
+ <sm:container id="jbi" depends-on="broker">
<!-- use JCA flow -->
<property name="flow">
<bean class="org.apache.servicemix.jbi.nmr.flow.jca.JCAFlow">
- <property name="transactionContextManager" ref="transactionContextManager" />
<property name="jmsURL" value="tcp://localhost:61626" />
</bean>
</property>
<!-- use XA transactions -->
- <property name="transactionManager" ref="userTransaction"/>
+ <property name="transactionManager" ref="transactionManager"/>
<!-- use autoEnlistInTransaction -->
<property name="autoEnlistInTransaction" value="true"/>
+ <property name="embedded" value="true" />
<sm:activationSpecs>
@@ -95,7 +97,7 @@
</property>
<!-- use XA transactions -->
- <property name="transactionManager" ref="userTransaction"/>
+ <property name="transactionManager" ref="transactionManager"/>
</bean></sm:component>
</sm:activationSpec>
<!-- END SNIPPET: receive -->