[jboss-svn-commits] JBL Code SVN: r27158 - in labs/jbossesb/workspace/dward/wsproxy/product: samples/quickstarts/webservice_wsproxy_basic/war/src/org/jboss/soa/esb/samples/quickstart/webservice_wsproxy_basic and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Jun 26 14:31:37 EDT 2009
Author: dward
Date: 2009-06-26 14:31:37 -0400 (Fri, 26 Jun 2009)
New Revision: 27158
Modified:
labs/jbossesb/workspace/dward/wsproxy/product/samples/quickstarts/webservice_wsproxy_basic/src/org/jboss/soa/esb/samples/quickstart/webservice_wsproxy_basic/test/SendWSMessage.java
labs/jbossesb/workspace/dward/wsproxy/product/samples/quickstarts/webservice_wsproxy_basic/war/src/org/jboss/soa/esb/samples/quickstart/webservice_wsproxy_basic/HelloWorldWS.java
labs/jbossesb/workspace/dward/wsproxy/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/proxy/HttpSOAPProxyTransport.java
labs/jbossesb/workspace/dward/wsproxy/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/proxy/SOAPProxy.java
labs/jbossesb/workspace/dward/wsproxy/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/proxy/SOAPProxyTransport.java
Log:
added javadoc
Modified: labs/jbossesb/workspace/dward/wsproxy/product/samples/quickstarts/webservice_wsproxy_basic/src/org/jboss/soa/esb/samples/quickstart/webservice_wsproxy_basic/test/SendWSMessage.java
===================================================================
--- labs/jbossesb/workspace/dward/wsproxy/product/samples/quickstarts/webservice_wsproxy_basic/src/org/jboss/soa/esb/samples/quickstart/webservice_wsproxy_basic/test/SendWSMessage.java 2009-06-26 18:14:58 UTC (rev 27157)
+++ labs/jbossesb/workspace/dward/wsproxy/product/samples/quickstarts/webservice_wsproxy_basic/src/org/jboss/soa/esb/samples/quickstart/webservice_wsproxy_basic/test/SendWSMessage.java 2009-06-26 18:31:37 UTC (rev 27158)
@@ -27,6 +27,8 @@
import org.jboss.internal.soa.esb.util.StreamUtils;
/**
+ * Sends a simple webservice request to the proxied webservice, printing both the request and the response to the console.
+ *
* @author dward at jboss.org
*/
public class SendWSMessage
Modified: labs/jbossesb/workspace/dward/wsproxy/product/samples/quickstarts/webservice_wsproxy_basic/war/src/org/jboss/soa/esb/samples/quickstart/webservice_wsproxy_basic/HelloWorldWS.java
===================================================================
--- labs/jbossesb/workspace/dward/wsproxy/product/samples/quickstarts/webservice_wsproxy_basic/war/src/org/jboss/soa/esb/samples/quickstart/webservice_wsproxy_basic/HelloWorldWS.java 2009-06-26 18:14:58 UTC (rev 27157)
+++ labs/jbossesb/workspace/dward/wsproxy/product/samples/quickstarts/webservice_wsproxy_basic/war/src/org/jboss/soa/esb/samples/quickstart/webservice_wsproxy_basic/HelloWorldWS.java 2009-06-26 18:31:37 UTC (rev 27158)
@@ -24,6 +24,8 @@
import javax.jws.WebService;
/**
+ * Simple rpc-style webservice that returns a hello greeting (using the passed-in name) and the current date.
+ *
* @author dward at jboss.org
*/
@WebService(name = "HelloWorld", targetNamespace = "http://webservice_wsproxy_basic/helloworld")
@@ -33,8 +35,7 @@
@WebMethod
public String sayHello(@WebParam(name = "toWhom") String toWhom)
{
- String greeting = "Hello World Greeting for '" + toWhom + "' on " + new java.util.Date();
- return greeting;
+ return "Hello '" + toWhom + "' on " + new java.util.Date();
}
}
Modified: labs/jbossesb/workspace/dward/wsproxy/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/proxy/HttpSOAPProxyTransport.java
===================================================================
--- labs/jbossesb/workspace/dward/wsproxy/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/proxy/HttpSOAPProxyTransport.java 2009-06-26 18:14:58 UTC (rev 27157)
+++ labs/jbossesb/workspace/dward/wsproxy/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/proxy/HttpSOAPProxyTransport.java 2009-06-26 18:31:37 UTC (rev 27158)
@@ -28,6 +28,9 @@
import org.jboss.soa.esb.message.Message;
/**
+ * Implements http-specific routing of the SOAP request to the target webservice. All config properties are passed through to a
+ * wrapped instance of {@link HttpRouter}, so any of it's config properties can be added to the {@link SOAPProxy} configuration.
+ *
* @author dward at jboss.org
*/
class HttpSOAPProxyTransport extends SOAPProxyTransport
Modified: labs/jbossesb/workspace/dward/wsproxy/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/proxy/SOAPProxy.java
===================================================================
--- labs/jbossesb/workspace/dward/wsproxy/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/proxy/SOAPProxy.java 2009-06-26 18:14:58 UTC (rev 27157)
+++ labs/jbossesb/workspace/dward/wsproxy/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/proxy/SOAPProxy.java 2009-06-26 18:31:37 UTC (rev 27158)
@@ -54,6 +54,25 @@
import org.xml.sax.helpers.XMLReaderFactory;
/**
+ * A SOAPProxy focuses on the consumption of an external WS endpoint (e.g. hosted on .NET, another external Java-based AS, LAMP)
+ * and re-publication of a WS endpoint via the ESB. The ESB sits between the ultimate consumer/client (e.g. .NET WinForm
+ * application) and the ultimate producer (e.g. RoR-hosted WS). The purpose of this intermediary is to provide an abstraction
+ * layer that provides for more loose coupling between the client and service, as they are both completely unaware of each other
+ * (the client no longer has a direct connection to the remote service's hostname/IP address). The client will see modified WSDL
+ * so that the client is pointed to the ESB's exposed endpoint instead of the original, now proxied endpoint.<p/>
+ *
+ * Only a single configuration property is needed for the SOAPProxy: the original "<b>wsdl</b>" (whose endpoint will get re-written
+ * and exposed as new wsdl from the ESB). Depending upon the <definitions><service><port><soap:address
+ * location attribute's protocol (for example "http"), a protocol-specific {@link SOAPProxyTransport} implementation is used. For
+ * other possible configuration properties, see the specific {@link SOAPProxyTransport} implementations themselves.<p/>
+ *
+ * <i>Example:</i><br/>
+ * <pre>
+ * <action name="wsproxy" class="org.jboss.soa.esb.actions.soap.proxy.SOAPProxy">
+ * <property name="wsdl" value="http://127.0.0.1:8080/path/HelloWorldWebService?wsdl"/>
+ * </action>
+ * </pre>
+ *
* @author dward at jboss.org
*/
@Publish(WsdlContractPublisher.class)
Modified: labs/jbossesb/workspace/dward/wsproxy/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/proxy/SOAPProxyTransport.java
===================================================================
--- labs/jbossesb/workspace/dward/wsproxy/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/proxy/SOAPProxyTransport.java 2009-06-26 18:14:58 UTC (rev 27157)
+++ labs/jbossesb/workspace/dward/wsproxy/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/proxy/SOAPProxyTransport.java 2009-06-26 18:31:37 UTC (rev 27158)
@@ -22,6 +22,10 @@
import org.jboss.soa.esb.actions.AbstractActionPipelineProcessor;
/**
+ * Sub-classes implement protocol-specific routing of the SOAP request to the target webservice, and expose it's endpoint address.
+ *
+ * @see HttpSOAPProxyTransport
+ *
* @author dward at jboss.org
*/
abstract class SOAPProxyTransport extends AbstractActionPipelineProcessor
More information about the jboss-svn-commits
mailing list