[jboss-svn-commits] JBL Code SVN: r37702 - labs/jbosstm/trunk/txbridge/demo/src/org/jboss/jbossts/txbridge/demo/client.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sat Nov 5 07:50:04 EDT 2011


Author: paul.robinson
Date: 2011-11-05 07:50:03 -0400 (Sat, 05 Nov 2011)
New Revision: 37702

Modified:
   labs/jbosstm/trunk/txbridge/demo/src/org/jboss/jbossts/txbridge/demo/client/BasicClient.java
   labs/jbosstm/trunk/txbridge/demo/src/org/jboss/jbossts/txbridge/demo/client/Restaurant.java
Log:
[JBTM-937] TxBridge demo app fails with ServiceConstructionException: Could not find portType named {http://client.demo.txbridge.jbossts.jboss.org/}Restaurant when run with JTA parent tx option

Modified: labs/jbosstm/trunk/txbridge/demo/src/org/jboss/jbossts/txbridge/demo/client/BasicClient.java
===================================================================
--- labs/jbosstm/trunk/txbridge/demo/src/org/jboss/jbossts/txbridge/demo/client/BasicClient.java	2011-11-05 11:44:45 UTC (rev 37701)
+++ labs/jbosstm/trunk/txbridge/demo/src/org/jboss/jbossts/txbridge/demo/client/BasicClient.java	2011-11-05 11:50:03 UTC (rev 37702)
@@ -31,6 +31,7 @@
 import com.arjuna.mw.wst11.UserTransactionFactory;
 import com.arjuna.mw.wst11.client.JaxWSHeaderContextProcessor;
 import com.arjuna.wst.TransactionRolledBackException;
+import org.jboss.jbossts.txbridge.outbound.JaxWSTxOutboundBridgeHandler;
 
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
@@ -47,6 +48,7 @@
 import javax.naming.Context;
 
 import java.io.IOException;
+import java.net.MalformedURLException;
 import java.net.URL;
 import java.util.List;
 import java.util.ArrayList;
@@ -78,7 +80,6 @@
             Service service = Service.create(wsdlLocation, serviceName);
             bistro = service.getPort(portName, Bistro.class);
 
-            // we could have used @HandlerChain but it's nice to show a bit of variety...
             BindingProvider bindingProvider = (BindingProvider)bistro;
             List<Handler> handlers = new ArrayList<Handler>(1);
             handlers.add(new JaxWSHeaderContextProcessor());
@@ -213,13 +214,8 @@
         System.out.println("CLIENT: transaction ID= "+ ut);
 
         // we reuse the existing WS-AT aware service from the XTS demo app
-        URL wsdlLocation = new URL("http://localhost:8080/xtsdemowebservices/RestaurantServiceAT?wsdl");
-        QName serviceName = new QName("http://www.jboss.com/jbosstm/xts/demo/Restaurant", "RestaurantServiceATService");
-        Service service = Service.create(wsdlLocation, serviceName);
+        Restaurant restaurant = createRestaurantClient();
 
-        // use a modified client interface with @HandlerChain configured on it.
-        Restaurant restaurant = service.getPort(Restaurant.class);
-
         System.out.println("CLIENT: calling business Web Services...");
 
         restaurant.bookSeats(numberOfSeats);
@@ -231,4 +227,26 @@
         System.out.println("done");
         System.out.flush();
     }
+
+    private Restaurant createRestaurantClient() throws MalformedURLException
+    {
+        //Obtain service
+        URL wsdlLocation = new URL("http://localhost:8080/xtsdemowebservices/RestaurantServiceAT?wsdl");
+        QName serviceName = new QName("http://www.jboss.com/jbosstm/xts/demo/Restaurant", "RestaurantServiceATService");
+        Service service = Service.create(wsdlLocation, serviceName);
+
+        //Obtain port
+        QName portName = new QName("http://www.jboss.com/jbosstm/xts/demo/Restaurant", "RestaurantServiceAT");
+        Restaurant restaurant = service.getPort(portName, Restaurant.class);
+
+        //Add client Handlers
+        List<Handler> handlers = new ArrayList<Handler>(1);
+        handlers.add(new JaxWSTxOutboundBridgeHandler());
+        handlers.add(new JaxWSHeaderContextProcessor());
+        BindingProvider bindingProvider = (BindingProvider) restaurant;
+        bindingProvider.getBinding().setHandlerChain(handlers);
+
+        return restaurant;
+    }
+
 }

Modified: labs/jbosstm/trunk/txbridge/demo/src/org/jboss/jbossts/txbridge/demo/client/Restaurant.java
===================================================================
--- labs/jbosstm/trunk/txbridge/demo/src/org/jboss/jbossts/txbridge/demo/client/Restaurant.java	2011-11-05 11:44:45 UTC (rev 37701)
+++ labs/jbosstm/trunk/txbridge/demo/src/org/jboss/jbossts/txbridge/demo/client/Restaurant.java	2011-11-05 11:50:03 UTC (rev 37702)
@@ -30,7 +30,6 @@
 
 @WebService
 @SOAPBinding(style = SOAPBinding.Style.RPC)
- at HandlerChain(file = "jaxws-handlers-client.xml") // relative path from the class file
 public interface Restaurant
 {
     public void bookSeats(@WebParam(name = "how_many", partName = "how_many")int how_many);



More information about the jboss-svn-commits mailing list