Hi ESB Team,

I think it's not right to resolve these kind of issues as "Not a bug"!

More details are available in the JIRA comments.

Please provide an acceptable solution to the issue.

Thanks!

Best Regards,

---------- Forwarded message ----------
From: Boguslaw Szczepanowski (JIRA) <[email protected]>
Date: Tue, Mar 25, 2014 at 5:21 PM
Subject: [Carbon-jira] [jira] (ESBJAVA-3064) ESB proxy service does not
start if target is unavailable
To: [email protected]


       Boguslaw Szczepanowski
<https://wso2.org/jira/secure/ViewProfile.jspa?name=boguslaw.szczepanowski%40ingbank.pl>
created [image: Bug] ESBJAVA-3064
<https://wso2.org/jira/browse/ESBJAVA-3064>
 *ESB proxy service does not start if target is unavailable*
<https://wso2.org/jira/browse/ESBJAVA-3064>
       *Issue Type:*  [image: Bug] Bug   *Affects Versions:*  4.8.1
*Assignee:*  Kasun Indrasiri
<https://wso2.org/jira/secure/ViewProfile.jspa?name=kasun%40wso2.com>
*Created:*  25/Mar/14 5:20 PM   *Description:*  I have a simple Proxy
Service deployed on WSO2 ESB. The service is defined as follow:

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse";
       name="HelloWorld"
       transports="https http"
       startOnLoad="false"
       trace="enable"
       statistics="enable">
   <description/>
   <target>
      <endpoint>
         <wsdl service="HelloWorld"
               port="HelloWorldImplPort"
               uri="http://myhostname:9001/HelloWorldInternal?wsdl";>
            <suspendOnFailure>
               <errorCodes>101508,101505,101503,101504</errorCodes>
               <initialDuration>1000</initialDuration>
               <progressionFactor>1.1</progressionFactor>
               <maximumDuration>30000</maximumDuration>
            </suspendOnFailure>
         </wsdl>
      </endpoint>
      <outSequence>
         <log level="full"/>
         <send/>
      </outSequence>
   </target>
   <publishWSDL uri="http://myhostname:9001/HelloWorldInternal?wsdl"/>
</proxy>


When I start WSO2 ESB when the target service is down, I get the following
error in ESB logs:

[2014-02-20 14:25:05,168] INFO - ProxyService Building Axis service for
Proxy service : HelloWorld
[2014-02-20 14:25:06,176] ERROR - ProxyService Error reading from wsdl URI
java.net.ConnectException: Connection refused: connect
    at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
    at
java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:75)

    at
java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)

    at
java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)

    at
java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:157)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391)
    at java.net.Socket.connect(Socket.java:579)
    at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
    at sun.net.www.http.HttpClient.openServer(HttpClient.java:388)
    at sun.net.www.http.HttpClient.openServer(HttpClient.java:483)
    at sun.net.www.http.HttpClient.&lt;init&gt;(HttpClient.java:213)
    at sun.net.www.http.HttpClient.New(HttpClient.java:300)
    at sun.net.www.http.HttpClient.New(HttpClient.java:316)
    at sun.net.
www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:992)
    at sun.net.
www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:928)
    at sun.net.
www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:846)
    at sun.net.
www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1296)
    at
org.apache.synapse.config.SynapseConfigUtils.getOMElementFromURL(SynapseConfigUtils.java:312)

    at
org.apache.synapse.core.axis2.ProxyService.buildAxisService(ProxyService.java:284)

    at
org.apache.synapse.Axis2SynapseController.deployProxyServices(Axis2SynapseController.java:709)

    at
org.apache.synapse.Axis2SynapseController.createSynapseEnvironment(Axis2SynapseController.java:388)

    at org.apache.synapse.ServerManager.start(ServerManager.java:181)
    at
org.wso2.carbon.mediation.initializer.ServiceBusInitializer.initESB(ServiceBusInitializer.java:424)

    at
org.wso2.carbon.mediation.initializer.ServiceBusInitializer.activate(ServiceBusInitializer.java:182)

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

    at java.lang.reflect.Method.invoke(Method.java:601)
    at
org.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:260)

    at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146)

    at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:347)

    at
org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)

    at
org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)

    at
org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:343)
    at
org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222)

    at
org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)

    at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)

    at
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)

    at
org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)

    at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)

    at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)

    at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)

    at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)

    at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)

    at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:451)

    at
org.wso2.carbon.event.core.internal.builder.EventBrokerHandler.startEventBroker(EventBrokerHandler.java:58)

    at
org.wso2.carbon.event.core.internal.builder.EventBrokerBuilderDS.activate(EventBrokerBuilderDS.java:72)

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

    at java.lang.reflect.Method.invoke(Method.java:601)
    at
org.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:260)

    at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146)

    at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:347)

    at
org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)

    at
org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)

    at
org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:343)
    at
org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222)

    at
org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)

    at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)

    at
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)

    at
org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)

    at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)

    at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)

    at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)

    at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)

    at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)

    at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:451)

    at
org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:517)

    at
org.wso2.carbon.core.init.CarbonServerManager.start(CarbonServerManager.java:219)

    at
org.wso2.carbon.core.internal.CarbonCoreServiceComponent.activate(CarbonCoreServiceComponent.java:77)

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

    at java.lang.reflect.Method.invoke(Method.java:601)
    at
org.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:260)

    at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146)

    at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:347)

    at
org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)

    at
org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)

    at
org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:343)
    at
org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222)

    at
org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)

    at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)

    at
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)

    at
org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)

    at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)

    at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)

    at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)

    at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)

    at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)

    at
org.eclipse.equinox.http.servlet.internal.Activator.registerHttpService(Activator.java:81)

    at
org.eclipse.equinox.http.servlet.internal.Activator.addProxyServlet(Activator.java:60)

    at
org.eclipse.equinox.http.servlet.internal.ProxyServlet.init(ProxyServlet.java:40)

    at
org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.init(DelegationServlet.java:38)

    at
org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1267)

    at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1186)

    at
org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1081)
    at
org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5027)

    at
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5314)

    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)

    at
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)

    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)
    at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)

    at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)

    at java.lang.Thread.run(Thread.java:722)
[2014-02-20 14:25:06,217] WARN - Axis2SynapseController The proxy service
HelloWorld cannot be deployed - Continue in Proxy Service fail-safe mode.
[2014-02-20 14:25:06,217] INFO - Axis2SynapseController Deploying
EventSources...
[2014-02-20 14:25:06,227] INFO - ServerManager Server ready for
processing...

The service now disappears from WSO2 web console.


1. It is not possible to make the service available again from console.
2. The proxy service does not start automatically when the target service
is up.

Now, any call to the proxy service result in HTTP 202 Accepted, even when
the target service is finally up. The only way to make my proxy service
visible again, is to touch it's configuration file, so it gets redeployed.
*Environment:*  Microsoft Windows 7, Oracle JDK 1.7.0_03   *Project:*  WSO2
ESB <https://wso2.org/jira/browse/ESBJAVA>   *Priority:*  [image: Normal]
Normal   *Reporter:*  Boguslaw Szczepanowski
<https://wso2.org/jira/secure/ViewProfile.jspa?name=boguslaw.szczepanowski%40ingbank.pl>
      This
message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA
administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

_______________________________________________
Carbon-jira mailing list
[email protected]
https://wso2.org/cgi-bin/mailman/listinfo/carbon-jira




-- 
Isuru Perera
Senior Software Engineer | WSO2, Inc. | http://wso2.com/
Lean . Enterprise . Middleware

about.me/chrishantha
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to