Create a Proxy in WSO2 ESB Using Admin Services
Join the DZone community and get the full member experience.
Join For FreeDo you want to know how to create a proxy in WSO2 ESB without using UI? Here is some sample code that will help you understand how to use an admin service to achieve the task:
package org.wso2.test; import org.apache.axis2.AxisFault; import org.wso2.carbon.proxyadmin.stub.ProxyServiceAdminProxyAdminException; import org.wso2.carbon.proxyadmin.stub.ProxyServiceAdminStub; import org.wso2.carbon.proxyadmin.stub.types.carbon.ProxyData; import org.wso2.carbon.utils.CarbonUtils; import java.rmi.RemoteException; public class TestProxy { public static void main(String[] args) throws RemoteException, ProxyServiceAdminProxyAdminException { String userName = "admin"; String password = "admin"; // Add the service URL String serviceEndPoint="http://localhost:8281/services/echo" ; // Proxy Admin service's endpoing URL String endPoint = "https://localhost:9444/services/" +"ProxyServiceAdmin"; // Set client trust store System.setProperty("javax.net.ssl.trustStore", "/media/data/wso2/products/wso2/esb/" + "wso2esb-4.5.0/repository/resources/security" + "/client-truststore.jks"); System.setProperty("javax.net.ssl.trustStorePassword", "wso2carbon"); System.setProperty("javax.net.ssl.trustStoreType","JKS"); ProxyServiceAdminStub proxyServiceAdminStub = new ProxyServiceAdminStub(endPoint); CarbonUtils.setBasicAccessSecurityHeaders(userName, password, proxyServiceAdminStub._getServiceClient()); //Set proxy configuration data String[] transport = {"http", "https"}; ProxyData data = new ProxyData(); data.setName("TestProxy2"); data.setWsdlURI("http://localhost:8281/services/echo?wsdl"); data.setTransports(transport); data.setStartOnLoad(true); data.setEndpointXML("<endpoint http:="http:" ns="ns" synapse="synapse" ws.apache.org="ws.apache.org" xmlns="\"><address serviceendpoint="serviceendpoint" uri="\"> </address> </endpoint>"); data.setEnableSecurity(true); proxyServiceAdminStub.addProxy(data); } }
You can download the complete maven project here.
Enterprise service bus
Published at DZone with permission of Shelan Perera, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.
Comments