Hi Miyuru,
Thanks for letting me know I'm looking into this. On Friday, August 2, 2013, Miyuru Wanninayaka wrote: > Hi Ravi, this commit causes httpendpoint test case fail. > testToPost > testToGet > testToPut fails > > [2013-08-02 13:34:55,448] ERROR - ClientUtils The system cannot infer the > transport information from the /services/StudentService URL. > [2013-08-02 13:34:55,449] ERROR - Axis2Sender Unexpected error during > sending message out > org.apache.axis2.AxisFault: The system cannot infer the transport > information from the /services/StudentService URL. > at > org.apache.axis2.description.ClientUtils.inferOutTransport(ClientUtils.java:81) > at > org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.executeImpl(DynamicAxisOperation.java:115) > at > org.apache.axis2.client.OperationClient.execute(OperationClient.java:149) > at > org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(Axis2FlexibleMEPClient.java:481) > at > org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java:57) > at > org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:342) > at > org.apache.synapse.endpoints.AbstractEndpoint.send(AbstractEndpoint.java:329) > at org.apache.synapse.endpoints.HTTPEndpoint.send(HTTPEndpoint.java:75) > at > org.apache.synapse.endpoints.IndirectEndpoint.send(IndirectEndpoint.java:54) > at > org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:95) > at > org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:71) > at > org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:114) > at > org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:162) > at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) > at > org.apache.synapse.transport.passthru.ServerWorker.processNonEntityEnclosingRESTHandler(ServerWorker.java:337) > at > org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:169) > at > org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > at java.lang.Thread.run(Thread.java:662) > > seems url substitution does not happens correctly. > > I'm reverting this to make test passes, please fix this properly > > On Fri, Jul 19, 2013 at 12:18 PM, <[email protected] <javascript:_e({}, > 'cvml', '[email protected]');>> wrote: > >> Author: [email protected] <javascript:_e({}, 'cvml', '[email protected]');> >> Date: Fri Jul 19 12:18:02 2013 >> New Revision: 178674 >> URL: http://wso2.org/svn/browse/wso2?view=rev&revision=178674 >> >> Log: >> Fixing ESBJAVA-2318 and making HTTPEndpoint work in a thread safe manner. >> >> Modified: >> >> >> carbon/platform/trunk/dependencies/synapse/2.1.1-wso2v8/modules/core/src/main/java/org/apache/synapse/endpoints/HTTPEndpoint.java >> >> Modified: >> carbon/platform/trunk/dependencies/synapse/2.1.1-wso2v8/modules/core/src/main/java/org/apache/synapse/endpoints/HTTPEndpoint.java >> URL: >> http://wso2.org/svn/browse/wso2/carbon/platform/trunk/dependencies/synapse/2.1.1-wso2v8/modules/core/src/main/java/org/apache/synapse/endpoints/HTTPEndpoint.java?rev=178674&r1=178673&r2=178674&view=diff >> >> ============================================================================== >> --- >> carbon/platform/trunk/dependencies/synapse/2.1.1-wso2v8/modules/core/src/main/java/org/apache/synapse/endpoints/HTTPEndpoint.java >> (original) >> +++ >> carbon/platform/trunk/dependencies/synapse/2.1.1-wso2v8/modules/core/src/main/java/org/apache/synapse/endpoints/HTTPEndpoint.java >> Fri Jul 19 12:18:02 2013 >> @@ -28,6 +28,7 @@ >> import org.apache.synapse.util.xpath.SynapseXPath; >> import com.damnhandy.uri.template.UriTemplate; >> >> +import java.net.URISyntaxException; >> import java.util.HashMap; >> import java.util.Iterator; >> import java.util.Map; >> @@ -43,7 +44,6 @@ >> /*Todo*/ >> /*Do we need HTTP Headers here?*/ >> >> - >> public void onFault(MessageContext synCtx) { >> >> // is this really a fault or a timeout/connection close etc? >> @@ -122,13 +122,23 @@ >> } >> } >> >> - uriTemplate.set(variables); >> + // We have to create a local UriTemplate object, or else the >> UriTemplate.set(variables) call will fill up a list of variables and since >> uriTemplate >> + // is not thread safe, this list won't be clearing. >> + UriTemplate template = null; >> + template = UriTemplate.fromTemplate(uriTemplate.getTemplate()); >> + >> + if(template != null) { >> + template.set(variables); >> + } >> + >> String evaluatedUri = ""; >> try { >> - evaluatedUri = uriTemplate.expand(); >> + evaluatedUri = new java.net.URI(template.expand()).getPath(); >> } catch(ExpressionParseException e) { >> log.debug("No URI Template variables defined in HTTP >> Endpoint: " + this.getName()); >> - evaluatedUri = uriTemplate.getTemplate(); >> + evaluatedUri = template.getTemplate(); >> + } catch (URISyntaxException e) { >> + evaluatedUri = template.getTemplate(); >> } >> if (evaluatedUri != null) { >> synCtx.setTo(new EndpointReference(evaluatedUri)); >> @@ -136,8 +146,6 @@ >> super.getDefinition().setAddress(evaluatedUri); >> } >> } >> - >> - >> } >> >> public String getHttpMethod() { >> _______________________________________________ >> Commits mailing list >> [email protected] <javascript:_e({}, 'cvml', '[email protected]');> >> http://wso2.org/cgi-bin/mailman/listinfo/commits >> > > > > -- > Miyuru Wanninayaka > Technical Lead > WSO2 Inc. : http://wso2.com > > Mobile : +94 77 209 9788 > Blog : http://miyurudw.blogspot.com > Flickr : http://www.flickr.com/photos/miyuru_daminda -- *Ravi Undupitiya* Software Engineer; WSO2 Inc.; http://wso2.com * * *E-mail: [email protected] **M: **+94 772 930 712* * *Lean . Enterprise . Middleware
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
