[ESBJAVA-4681] No error when we calling a nonexistent endpoint Created: 15/Jun/16  Updated: 29/Jun/17

Status: In Progress
Project: WSO2 ESB
Component/s: Endpoints Management, Registry
Affects Version/s: 4.9.0
Fix Version/s: None

Type: Bug Priority: Highest
Reporter: gregory eve Assignee: Isuru Udana Loku Narangoda
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Test case:

  • create a proxy service or an api
  • in the end sequence add a send mediator and set a nonexistent registry entry
  • test the flow

no error log generated
message pass through faultSequence but ERROR_MESSAGE, ERROR_CODE, etc. are empty.

Same problem if xml in registry ressource is not well formated.






[ESBJAVA-5198] Get the Inbound Endpoint parameters from environment variables Created: 20/Mar/17  Updated: 11/Jul/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Highest
Reporter: Shakila Sasikaran Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Test cases added: Yes

 Description   

It would be great to implement the feature to get the Inbound Endpoint parameter values from environment variables as we get from the registry properties.



 Comments   
Comment by Thilini Ishaka [ 20/Mar/17 ]

Hi Shakila,

As we have multi-car upload functionality in the integration cloud, we can suggest the below approach.
1. [CAR1] Create a car with the application logic. You'll be defining the registry resource key within the application logic wherever necessary.
2. [CAR2] Separate car file per environment with registry resources. There you define the value for aforementioned keys.

If there's a change to a certain property, you'll only need to alter [CAR2] while [CAR1] remains unchanged.

We hope this approach will work for you.

Regards,
Thilini

Comment by Shakila Sasikaran [ 20/Mar/17 ]

Hi Thilini,

If we have the registry resources and other synapse configs in one car also, we are going to change the registry resource only in case of the value change. IMHO, using the environment variables instead of the registry resources is more flexible to the end users.

Thank you,
Shakila





[ESBJAVA-5145] "org.apache.axis2.AxisFault: No permission to access the server buffer error thrown when there are 2 CG servers and published to server which is added later Created: 30/Jan/14  Updated: 11/Jul/17

Status: Open
Project: WSO2 ESB
Component/s: Cloud Gateway
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Highest
Reporter: Shashika Ubhayaratne Assignee: Rajika Kumarasiri
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

CGAgent 1.0.0 + ESB 4.8.1


Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

1. Create a ESB proxy service
2. Create CGAgent 2 connections to different ports (2 CG servers shouls run on different ports)
3. Publish proxy service to 2nd CGAgent.
4. Send request to CG end point

Issue: Nothing prints on ESB logs yet CG contains following errors:
Also, request npot forwarded to backend. (Here I used App server echo service as the backend)

[2014-01-30 11:51:38,294] INFO - CarbonAuthenticationUtil 'admin@carbon.super [-1234]' logged in at [2014-01-30 11:51:38,294+0530]
[2014-01-30 11:51:38,550] INFO - ProxyService Building Axis service for Proxy service : ptProxy1
[2014-01-30 11:51:38,561] INFO - ProxyService Adding service ptProxy1 to the Axis2 configuration
[2014-01-30 11:51:38,687] INFO - DeploymentInterceptor Deploying Axis2 service: ptProxy1

{super-tenant}

[2014-01-30 11:51:38,720] INFO - ProxyService Successfully created the Axis2 service for Proxy service : ptProxy1
[2014-01-30 11:51:40,157] INFO - CarbonAuthenticationUtil 'admin@carbon.super [-1234]' logged in at [2014-01-30 11:51:40,157+0530]
[2014-01-30 11:51:41,529] INFO - CarbonAuthenticationUtil 'admin@carbon.super [-1234]' logged in at [2014-01-30 11:51:41,529+0530]
[2014-01-30 11:52:03,073] INFO - TimeoutHandler This engine will expire all callbacks after : 86400 seconds, irrespective of the timeout action, after the specified or optional timeout
[2014-01-30 11:52:03,080] ERROR - CGTransportSender No permission to access the server buffers
[2014-01-30 11:52:03,081] ERROR - CGTransportSender Could not process the request message
org.apache.axis2.AxisFault: No permission to access the server buffers
at org.apache.axis2.transport.base.AbstractTransportSender.handleException(AbstractTransportSender.java:231)
at org.wso2.carbon.cloud.gateway.transport.CGTransportSender.sendMessage(CGTransportSender.java:236)
at org.apache.axis2.transport.base.AbstractTransportSender.invoke(AbstractTransportSender.java:112)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:443)
at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.send(DynamicAxisOperation.java:193)
at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.executeImpl(DynamicAxisOperation.java:175)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165)
at org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(Axis2FlexibleMEPClient.java:445)
at org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java:57)
at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:286)
at org.apache.synapse.endpoints.AbstractEndpoint.send(AbstractEndpoint.java:297)
at org.apache.synapse.endpoints.AddressEndpoint.send(AddressEndpoint.java:59)
at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:175)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:181)
at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:172)
at org.apache.synapse.transport.nhttp.ServerWorker.processEntityEnclosingMethod(ServerWorker.java:416)
at org.apache.synapse.transport.nhttp.ServerWorker.run(ServerWorker.java:268)
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)
[2014-01-30 11:52:03,081] ERROR - Axis2Sender Unexpected error during sending message out
org.apache.axis2.AxisFault: Could not process the request message
at org.apache.axis2.transport.base.AbstractTransportSender.handleException(AbstractTransportSender.java:226)
at org.wso2.carbon.cloud.gateway.transport.CGTransportSender.sendMessage(CGTransportSender.java:272)
at org.apache.axis2.transport.base.AbstractTransportSender.invoke(AbstractTransportSender.java:112)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:443)
at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.send(DynamicAxisOperation.java:193)
at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.executeImpl(DynamicAxisOperation.java:175)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165)
at org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(Axis2FlexibleMEPClient.java:445)
at org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java:57)
at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:286)
at org.apache.synapse.endpoints.AbstractEndpoint.send(AbstractEndpoint.java:297)
at org.apache.synapse.endpoints.AddressEndpoint.send(AddressEndpoint.java:59)
at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:175)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:181)
at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:172)
at org.apache.synapse.transport.nhttp.ServerWorker.processEntityEnclosingMethod(ServerWorker.java:416)
at org.apache.synapse.transport.nhttp.ServerWorker.run(ServerWorker.java:268)
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)
Caused by: org.apache.axis2.AxisFault: No permission to access the server buffers
at org.apache.axis2.transport.base.AbstractTransportSender.handleException(AbstractTransportSender.java:231)
at org.wso2.carbon.cloud.gateway.transport.CGTransportSender.sendMessage(CGTransportSender.java:236)
... 19 more
[2014-01-30 11:52:03,084] ERROR - ServerWorker Error processing POST request
org.apache.axis2.AxisFault: Error reading data handler
at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:180)
at org.apache.synapse.transport.nhttp.ServerWorker.processEntityEnclosingMethod(ServerWorker.java:416)
at org.apache.synapse.transport.nhttp.ServerWorker.run(ServerWorker.java:268)
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)
Caused by: org.apache.axiom.om.OMException: Error reading data handler
at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerialize(OMTextImpl.java:411)
at org.apache.axiom.om.impl.util.OMSerializerUtil.serializeChildren(OMSerializerUtil.java:555)
at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:875)
at org.apache.axiom.om.impl.util.OMSerializerUtil.serializeChildren(OMSerializerUtil.java:555)
at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:875)
at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:230)
at org.apache.axiom.om.impl.llom.OMSerializableImpl.serialize(OMSerializableImpl.java:125)
at org.apache.axiom.om.impl.llom.OMSerializableImpl.serialize(OMSerializableImpl.java:113)
at org.apache.axiom.om.impl.llom.OMElementImpl.toString(OMElementImpl.java:988)
at java.lang.String.valueOf(String.java:2826)
at java.lang.StringBuffer.append(StringBuffer.java:219)
at org.apache.synapse.mediators.builtin.LogMediator.getFullLogMessage(LogMediator.java:184)
at org.apache.synapse.mediators.builtin.LogMediator.getLogMessage(LogMediator.java:123)
at org.apache.synapse.mediators.builtin.LogMediator.mediate(LogMediator.java:91)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:60)
at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:114)
at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:81)
at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:54)
at org.apache.synapse.endpoints.AbstractEndpoint.invokeNextFaultHandler(AbstractEndpoint.java:564)
at org.apache.synapse.endpoints.AbstractEndpoint.onFault(AbstractEndpoint.java:413)
at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:43)
at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:102)
at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:183)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:181)
at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:172)
... 6 more
Caused by: java.io.IOException: Input stream has being already consumed
at org.wso2.carbon.relay.StreamingOnRequestDataSource.getInputStream(StreamingOnRequestDataSource.java:63)
at javax.activation.DataHandler.writeTo(DataHandler.java:290)
at org.apache.axiom.util.stax.XMLStreamWriterUtils.writeBase64(XMLStreamWriterUtils.java:62)
at org.apache.axiom.util.stax.XMLStreamWriterUtils.writeDataHandler(XMLStreamWriterUtils.java:138)
at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerialize(OMTextImpl.java:408)
... 30 more

Note: Once the published proxy is unpublished and publish again to CG server 1 created.
Request is success.






[ESBJAVA-3896] Sample 657 of distributed transaction management is not working properly Created: 13/Jul/15  Updated: 06/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.9.0 - Alpha
Fix Version/s: None

Type: Bug Priority: High
Reporter: Nayomi Dayarathne Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Pack : wso2esb-4.9.0-ALPHA3 - 22.06.2015 pack
Java version : Oracle jdk 1.7.0
DB Version : embedded H2
OS : Ubuntu 14.04 LTS


Severity: Major
Estimated Complexity: Moderate
Test cases added: No

 Description   

Steps to recreate :

1.Create two data sources using management console.
2.Create two derby databases.
3.Insert values into tables as transaction mediator example.(https://docs.wso2.com/display/ESB490/Transaction+Mediator+Example)

4.Since there was no 657 synapse config file, copy the given synapse config to synapse.xml file in ESB_HOME/repository/samples/ location.

5.Invoke the clients as stated in document.

But when we invoke client using commands stated in document, nothing happening to values of database tables as stated.

The successful scenario and failure scenario are not effecting to any of the database table values we have created.






[ESBJAVA-5064] SOAP to JSON Integration broken with JSONStreamBuilder/Formatter Created: 29/Mar/17  Updated: 29/Mar/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: dushan abeyruwan Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Blocker
Estimated Complexity: Novice
Test cases added: Yes

 Description   

Just test with simple scenario with the following proxy, The BE must be JSON, and client should be SOAP

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
       name="WorkflowCallbackService"
       transports="https http"
       startOnLoad="true"
       trace="disable">
   <description/>
   <target>
      <inSequence>
         <property name="messageType"
                   value="application/x-www-form-urlencoded"
                   scope="axis2"
                   type="STRING"/>
         <send>
            <endpoint>
               <address uri="https://localhost:9443/store/site/blocks/workflow/workflow-listener/ajax/workflow-listener.jag"
                        format="rest"/>
            </endpoint>
         </send>
      </inSequence>
      <outSequence>
         <property name="messageType" value="text/xml" scope="axis2" type="STRING"/>
         <send/>
      </outSequence>
   </target>
</proxy>
[19:46:51,245{GMT}] DEBUG - headers http-outgoing-2 >> Connection: Keep-Alive
[19:46:51,245{GMT}] DEBUG - headers http-outgoing-2 >> User-Agent: Synapse-PT-HttpComponents-NIO
[19:46:51,245{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 << "POST /foo HTTP/1.1[\r][\n]"
[19:46:51,245{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 << "Content-Type: application/x-www-form-urlencoded[\r][\n]"
[19:46:51,245{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 << "SOAPAction: urn:getFullQuote[\r][\n]"
[19:46:51,245{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 << "Transfer-Encoding: chunked[\r][\n]"
[19:46:51,246{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 << "Host: localhost:8080[\r][\n]"
[19:46:51,246{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 << "Connection: Keep-Alive[\r][\n]"
[19:46:51,246{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 << "User-Agent: Synapse-PT-HttpComponents-NIO[\r][\n]"
[19:46:51,246{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 << "[\r][\n]"
[19:46:51,246{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 << "74[\r][\n]"
[19:46:51,246{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 << "request=%0A%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20[\r][\n]"
[19:46:51,247{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 << "0[\r][\n]"
[19:46:51,247{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 << "[\r][\n]"
[19:46:51,254{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 >> "HTTP/1.1 200 OK[\r][\n]"
[19:46:51,254{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 >> "Content-Type: application/json[\r][\n]"
[19:46:51,254{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 >> "Transfer-Encoding: chunked[\r][\n]"
[19:46:51,254{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 >> "Server: Jetty(6.1.26)[\r][\n]"
[19:46:51,254{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 >> "[\r][\n]"
[19:46:51,254{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 >> "35[\r][\n]"
[19:46:51,254{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 >> "{"workflowCallbackResponse" : {"error" : "false"}}   [\r][\n]"
[19:46:51,254{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 >> "0[\r][\n]"
[19:46:51,254{GMT}] DEBUG - wire HTTP-Sender I/O dispatcher-1 >> "[\r][\n]"
[19:46:51,254{GMT}] DEBUG - headers http-outgoing-2 << HTTP/1.1 200 OK
[19:46:51,255{GMT}] DEBUG - headers http-outgoing-2 << Content-Type: application/json
[19:46:51,255{GMT}] DEBUG - headers http-outgoing-2 << Transfer-Encoding: chunked
[19:46:51,255{GMT}] DEBUG - headers http-outgoing-2 << Server: Jetty(6.1.26)
[19:46:51,256{GMT}]  INFO - LogMediator To: http://www.w3.org/2005/08/addressing/anonymous, WSAction: , SOAPAction: , MessageID: urn:uuid:c9265bc9-1993-47c4-a93f-e16d86bf9e77, Direction: response, sss = ssss222222, Payload: {"workflowCallbackResponse" : {"error" : "false"}}
[19:46:51,257{GMT}] ERROR - PassThroughHttpSender Failed to submit the response
org.apache.axis2.AxisFault: Can not output XML declaration, after other output has already been done.
	at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
	at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:78)
	at org.apache.synapse.transport.passthru.PassThroughHttpSender.submitResponse(PassThroughHttpSender.java:555)
	at org.apache.synapse.transport.passthru.PassThroughHttpSender.invoke(PassThroughHttpSender.java:264)
	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
	at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:222)
	at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:531)
	at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:118)
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator






[ESBJAVA-5045] Datamapper throws NumberFormatException when xsi:nil="true" in xml Created: 14/Mar/17  Updated: 31/Mar/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: Ruwani Wanniarachchi Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: ESB
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

ESB 5.0.0


Severity: Major
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0

 Description   

When there is an xml where one element has a number and other has xsi:nil="true" as below

<Party>
    <id>100</id>
    <PartyId xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
</Party>
<Party>
     <id>101</id>
     <PartyId>22222</PartyId>
</Party>

Auto generated inputSchema.json will map the PartyId as a number

"PartyId" : {
                "id" : "http://wso2jsonschema.org/GetResponse/Party/0/PartyId",
                "type" : "number"
} 

When you send the same xml to a datamapper mediator in a proxy it throws the following exception.

ERROR - SequenceMediator empty String
java.lang.NumberFormatException: empty String
	at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1020)
	at java.lang.Double.parseDouble(Double.java:540)
	at org.wso2.carbon.mediator.datamapper.engine.input.readers.XMLInputReader.writeFieldElement(XMLInputReader.java:650)
	at org.wso2.carbon.mediator.datamapper.engine.input.readers.XMLInputReader.xmlTraverse(XMLInputReader.java:211)
	at org.wso2.carbon.mediator.datamapper.engine.input.readers.XMLInputReader.xmlTraverse(XMLInputReader.java:228)
	at org.wso2.carbon.mediator.datamapper.engine.input.readers.XMLInputReader.xmlTraverse(XMLInputReader.java:228)
	at org.wso2.carbon.mediator.datamapper.engine.input.readers.XMLInputReader.xmlTraverse(XMLInputReader.java:228)
	at org.wso2.carbon.mediator.datamapper.engine.input.readers.XMLInputReader.read(XMLInputReader.java:120)
	at org.wso2.carbon.mediator.datamapper.engine.input.InputBuilder.buildInputModel(InputBuilder.java:59)
	at org.wso2.carbon.mediator.datamapper.engine.core.mapper.MappingHandler.doMap(MappingHandler.java:67)
	at org.wso2.carbon.mediator.datamapper.DataMapperMediator.transform(DataMapperMediator.java:306)
	at org.wso2.carbon.mediator.datamapper.DataMapperMediator.mediate(DataMapperMediator.java:256)
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:97)
	at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:260)
	at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.mediateFromContinuationStateStack(Axis2SynapseEnvironment.java:766)
	at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:282)
	at org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:554)
	at org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:188)
	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
	at org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:261)
	at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)


 Comments   
Comment by Himasha Guruge [ 31/Mar/17 ]

Fixed with commit https://github.com/wso2/carbon-mediation/commit/b45657aa2f04531af89d0f09029503e18fdb2cd3.





[ESBJAVA-5015] java.util.EmptyStackException Created: 09/Feb/17  Updated: 09/Feb/17

Status: Open
Project: WSO2 ESB
Component/s: Mediators, Message Processors, Message Stores, Sequences Management
Affects Version/s: 4.8.1
Fix Version/s: None

Type: Bug Priority: High
Reporter: Nagamohan Borra Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

We have a cluster of ESB servers and each server has a message store pointing to same JMS queue. Each server has a message processor for each message store configured.

Before we have two ESB servers and everything was fine but when we deploy the same code to another X servers then previous applications got affected .

here by iam giving the wso2-error-log found .

2017-01-27 19:29:22,087 [-] [Axis2 Task] ERROR AsyncCallback
java.util.EmptyStackException
at java.util.Stack.peek(Stack.java:102)
at org.apache.synapse.continuation.ContinuationStackManager.addReliantContinuationState(ContinuationStackManager.java:103)
at org.apache.synapse.mediators.eip.splitter.CloneMediator.mediate(CloneMediator.java:100)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:77)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47)
at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:131)
at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:166)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
at org.apache.axis2.transport.local.LocalTransportReceiver.processMessage(LocalTransportReceiver.java:169)
at org.apache.axis2.transport.local.LocalTransportReceiver.processMessage(LocalTransportReceiver.java:82)
at org.apache.axis2.transport.local.LocalTransportSender.finalizeSendWithToAddress(LocalTransportSender.java:102)
at org.apache.axis2.transport.local.LocalTransportSender.invoke(LocalTransportSender.java:77)
at org.apache.axis2.engine.AxisEngine$TransportNonBlockingInvocationWorker.run(AxisEngine.java:626)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)






[ESBJAVA-5039] Error when creating Role in WSO2 IS through ESB 4.9.0 with call blocking Created: 07/Mar/17  Updated: 15/Mar/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: ajanthan e Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Test cases added: Yes

 Description   

Reproducing Steps:

1) Enable the admin services in WSO2 IS and start the server.
2) Create a proxy service as below:

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
       name="test3"
       transports="http"
       statistics="disable"
       trace="disable"
       startOnLoad="true">
   <target>
      <inSequence>
         <log level="custom">
            <property name="LOG3" value="--- before call test33 ---"/>
         </log>
         <payloadFactory media-type="xml">
            <format>
               <ser:addRole xmlns:ser="http://service.ws.um.carbon.wso2.org">
                  <ser:roleName>test</ser:roleName>
               </ser:addRole>
            </format>
            <args/>
         </payloadFactory>
         <header name="Action" value="urn:addRole"/>
         <property name="HTTP_METHOD" value="POST" scope="axis2"/>
         <property name="Authorization"
                   expression="fn:concat('Basic ', base64Encode('admin:admin'))"
                   scope="transport"/>
         <property name="messageType" value="application/xml" scope="axis2"/>
         <log level="full"/>
         <call blocking="true">
            <endpoint>
               <address uri="https://localhost:9444/services/RemoteUserStoreManagerService"/>
            </endpoint>
         </call>
         <log level="custom">
            <property name="LOG3" value="--- after call test333 ---"/>
         </log>
         <respond/>
      </inSequence>
      <faultSequence>
         <log level="custom">
            <property name="LOG3" value="--- inside faultSequence - test3333 ---"/>
         </log>
         <sequence key="fault"/>
      </faultSequence>
   </target>
   <description/>
</proxy>                               

3) Send a request to proxy.

4) Will get the below error.

[2017-03-07 12:06:07,687] ERROR - ServerWorker Error processing GET reguest for : /services/test3. Error detail: org.apache.synapse.SynapseException: Could not build full log message: null.
java.lang.RuntimeException: org.apache.synapse.SynapseException: Could not build full log message: null
    at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:110)
    at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:214)
    at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
    at org.apache.synapse.transport.passthru.ServerWorker.processNonEntityEnclosingRESTHandler(ServerWorker.java:317)
    at org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:149)
    at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.synapse.SynapseException: Could not build full log message: null
    at org.apache.synapse.mediators.AbstractMediator.handleException(AbstractMediator.java:285)
    at org.apache.synapse.mediators.builtin.LogMediator.getFullLogMessage(LogMediator.java:207)
    at org.apache.synapse.mediators.builtin.LogMediator.getLogMessage(LogMediator.java:131)
    at org.apache.synapse.mediators.builtin.LogMediator.mediate(LogMediator.java:95)
    at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:81)
    at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:48)
    at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:149)
    at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:214)
    at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:81)
    at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:48)
    at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:149)
    at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:86)
    at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:102)
    ... 8 more



 Comments   
Comment by Himasha Guruge [ 15/Mar/17 ]

Fixed with https://github.com/wso2/wso2-synapse/commit/fd31b24fc20a147c58358aa3b50cfed1c496692f.





[ESBJAVA-5038] Error when creating a role in WSO2 IS RemoteUserStoreManagerService from a call blocking="true" in WSO2 ESB Created: 07/Mar/17  Updated: 07/Mar/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.9.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: ajanthan e Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Follow the below steps to reproduce the issue.
1) Enable admin services and up the WSO2 IS.
2) create a proxy service as below:

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
       name="test3"
       transports="http"
       startOnLoad="true"
       trace="disable">
   <description/>
   <target>
      <inSequence>
         <log level="custom">
            <property name="LOG3" value="--- before call test33 ---"/>
         </log>
         <payloadFactory media-type="xml">
            <format>
               <ser:addRole xmlns:ser="http://service.ws.um.carbon.wso2.org">
                  <ser:roleName>demo325</ser:roleName>
               </ser:addRole>
            </format>
            <args/>
         </payloadFactory>
         <header name="Action" value="urn:addRole"/>
         <property name="HTTP_METHOD" value="POST" scope="axis2"/>
         <property name="Authorization"
                   expression="fn:concat('Basic ', base64Encode('admin:admin'))"
                   scope="transport"/>
         <property name="messageType" value="application/xml" scope="axis2"/>
         <log level="full"/>
         <call blocking="true">
            <endpoint>
               <address uri="https://localhost:9444/services/RemoteUserStoreManagerService"/>
            </endpoint>
         </call>
         <log level="custom">
            <property name="LOG3" value="--- after call test333 ---"/>
         </log>
         <respond/>
      </inSequence>
      <faultSequence>
         <log level="custom">
            <property name="LOG3" value="--- inside faultSequence - test3333 ---"/>
         </log>
         <sequence key="fault"/>
      </faultSequence>
   </target>
</proxy>

3) Send a request to test3.xml.

4) Will get the below error.

[2017-03-07 09:43:29,306] ERROR - ServerWorker Error processing GET reguest for : /services/test3. Error detail: org.apache.synapse.SynapseException: Could not build full log message: null. 
java.lang.RuntimeException: org.apache.synapse.SynapseException: Could not build full log message: null
	at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:110)
	at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:214)
	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
	at org.apache.synapse.transport.passthru.ServerWorker.processNonEntityEnclosingRESTHandler(ServerWorker.java:317)
	at org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:149)
	at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.synapse.SynapseException: Could not build full log message: null
	at org.apache.synapse.mediators.AbstractMediator.handleException(AbstractMediator.java:285)
	at org.apache.synapse.mediators.builtin.LogMediator.getFullLogMessage(LogMediator.java:207)
	at org.apache.synapse.mediators.builtin.LogMediator.getLogMessage(LogMediator.java:131)
	at org.apache.synapse.mediators.builtin.LogMediator.mediate(LogMediator.java:95)
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:81)
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:48)
	at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:149)
	at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:214)
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:81)
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:48)
	at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:149)
	at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:86)
	at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:102)
	... 8 more






[ESBJAVA-5032] ESB using a large heap memory when processing files through VFS proxy, using an iterator mediator Created: 01/Mar/17  Updated: 01/Mar/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: High
Reporter: Sameera Ramasinghe Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

When trying to process files > 200mb through a VFS proxy, which uses an iterator mediator. If the number of tags in the input xml, matching the iterator expression is too large, a java heap OOM exception occurs.






[ESBJAVA-5003] Errors when executing identity migration client scripts for ESB 481/490 to 500 migration Created: 24/Jan/17  Updated: 25/Jan/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 5.0.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Sashika Wijesinghe Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

OS - Ubuntu
DB - mysql 5.6


Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Observed below "table not found" exception when upgrading the user management database schema in ESB481 to ESB500 migration using the "-Dmigrate -DmigrateUMData -Dcomponent=identity" command as mentioned in [1].

[2017-01-24 11:57:51,560]  INFO - RuleEngineConfigDS Successfully registered the Rule Config service
[2017-01-24 11:57:51,603] ERROR - MigrateFrom5to510 Error while migrating databases
org.wso2.carbon.identity.base.IdentityException: Error while migrating user management data
	at org.wso2.carbon.identity.base.IdentityException.error(IdentityException.java:162)
	at org.wso2.carbon.is.migration.client.MigrateFrom5to510.migrateUMData(MigrateFrom5to510.java:655)
	at org.wso2.carbon.is.migration.client.MigrateFrom5to510.databaseMigration(MigrateFrom5to510.java:197)
	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:606)
	at org.wso2.carbon.identity.core.internal.IdentityCoreServiceComponent.activate(IdentityCoreServiceComponent.java:119)
	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:606)
	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:345)
	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:514)
	at org.wso2.carbon.core.init.CarbonServerManager.start(CarbonServerManager.java:219)
	at org.wso2.carbon.core.internal.CarbonCoreServiceComponent.activate(CarbonCoreServiceComponent.java:94)
	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:606)
	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:345)
	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:1282)
	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1195)
	at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1085)
	at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5318)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5610)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1572)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1562)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)
Caused by: org.h2.jdbc.JdbcSQLException: Table "SP_APP" not found; SQL statement:
SELECT APP_NAME, TENANT_ID FROM SP_APP [42102-140]
	at org.h2.message.DbException.getJdbcSQLException(DbException.java:327)
	at org.h2.message.DbException.get(DbException.java:167)
	at org.h2.message.DbException.get(DbException.java:144)
	at org.h2.command.Parser.readTableOrView(Parser.java:4498)
	at org.h2.command.Parser.readTableFilter(Parser.java:1011)
	at org.h2.command.Parser.parseSelectSimpleFromPart(Parser.java:1577)
	at org.h2.command.Parser.parseSelectSimple(Parser.java:1682)
	at org.h2.command.Parser.parseSelectSub(Parser.java:1571)
	at org.h2.command.Parser.parseSelectUnion(Parser.java:1416)
	at org.h2.command.Parser.parseSelect(Parser.java:1404)
	at org.h2.command.Parser.parsePrepared(Parser.java:392)
	at org.h2.command.Parser.parse(Parser.java:275)
	at org.h2.command.Parser.parse(Parser.java:247)
	at org.h2.command.Parser.prepare(Parser.java:201)
	at org.h2.command.Parser.prepareCommand(Parser.java:214)
	at org.h2.engine.Session.prepareLocal(Session.java:434)
	at org.h2.engine.Session.prepareCommand(Session.java:384)
	at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1071)
	at org.h2.jdbc.JdbcPreparedStatement.<init>(JdbcPreparedStatement.java:71)
	at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:234)
	at sun.reflect.GeneratedMethodAccessor28.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.apache.tomcat.jdbc.pool.ProxyConnection.invoke(ProxyConnection.java:126)
	at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109)
	at org.wso2.carbon.ndatasource.rdbms.ConnectionRollbackOnReturnInterceptor.invoke(ConnectionRollbackOnReturnInterceptor.java:51)
	at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109)
	at org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:67)
	at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109)
	at org.apache.tomcat.jdbc.pool.interceptor.ConnectionState.invoke(ConnectionState.java:153)
	at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109)
	at org.apache.tomcat.jdbc.pool.TrapException.invoke(TrapException.java:41)
	at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109)
	at org.apache.tomcat.jdbc.pool.DisposableConnectionFacade.invoke(DisposableConnectionFacade.java:80)
	at com.sun.proxy.$Proxy18.prepareStatement(Unknown Source)
	at org.wso2.carbon.is.migration.client.MigrateFrom5to510.migrateUMData(MigrateFrom5to510.java:637)
	... 66 more

db scripts included in the "migration-5.0.0SP1_to_5.1.0" directory contains some alter statements for "SP_APP" table, but could not find a create table query.

Note: Verified the dbscripts in IS500 SP1 pack and it contains the SP_APP create table query.

[1] https://docs.wso2.com/display/ESB500/Upgrading+from+a+Previous+Release






[ESBJAVA-5090] Maximum redelivery attempts value is not reflected correctly in Message Processor UI Created: 28/Apr/17  Updated: 03/May/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 5.0.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Jagath Ariyarathne Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File patch.diff    
Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Even the value of "Maximum redelivery attempts" is changed from Message processor UI, it is not updated in UI. But it is saved correctly in file system and functionality is working fine.



 Comments   
Comment by Jagath Ariyarathne [ 28/Apr/17 ]

This can be fixed with attached diff. patch.diff

Comment by Manorama Perera [ 03/May/17 ]

Fixed in https://github.com/wso2/carbon-mediation/pull/824





[ESBJAVA-4977] Cannot Enrich a property when value of the property is OMElement Created: 14/Dec/16  Updated: 22/Dec/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.8.1
Fix Version/s: None

Type: Bug Priority: High
Reporter: Vijitha Ekanayake Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Please find the sample configurations.

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
name="nnnn"
transports="https,http"
statistics="disable"
trace="disable"
startOnLoad="true">
<target>
<inSequence>
<log/>
<property name="foo">
<root xmlns="">
<test>
<aa>ff</aa>
<kk>aaa</kk>
</test>
</root>
</property>
<property name="transportHeader" scope="default">
<foo xmlns=""/>
</property>
<enrich>
<source type="property" clone="true" property="foo"/>
<target type="property" action="child" property="transportHeader"/>
</enrich>
<log level="custom">
<property name="ModifiedHeader" expression="get-property('transportHeader')"/>
</log>
<property name="header1"
expression="get-property('transportHeader')"
scope="transport"/>
<respond/>
</inSequence>
</target>
<description/>
</proxy>



 Comments   
Comment by Amjadh Ifthikar [ 22/Dec/16 ]

PR for the fix
https://github.com/wso2/wso2-synapse/pull/685





[ESBJAVA-5120] Failover Endpoint in ESB4.9.0 not retrying when there is a Connection Reset Exception Created: 07/Jun/17  Updated: 07/Jun/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.9.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: ajanthan e Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: esb, failoverendpoint
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Test cases added: Yes

 Description   

Reproducing Steps
-------------------------

1) In a fresh ESB4.9.0 create a proxy service as below:

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
       name="FailoverCheckProxy"
       transports="https,http"
       statistics="disable"
       trace="disable"
       startOnLoad="true">
   <target>
      <inSequence onError="fault_sequence">
         <log level="custom">
            <property name="STATUS"
                      value="-----------------FailoverCheckProxy Invoked----------------------"/>
         </log>
         <call>
            <endpoint name="CBSSPersonServiceBackendEP_failover">
               <failover>
                  <endpoint name="EP1">
                     <address uri="http://localhost:8290">
                        <timeout>
                           <responseAction>fault</responseAction>
                        </timeout>
                        <suspendOnFailure>
                           <initialDuration>1000</initialDuration>
                           <progressionFactor>1.0</progressionFactor>
                           <maximumDuration>1000</maximumDuration>
                        </suspendOnFailure>
                        <markForSuspension>
                           <errorCodes>101500,101503,101504</errorCodes>
                           <retriesBeforeSuspension>4</retriesBeforeSuspension>
                           <retryDelay>1</retryDelay>
                        </markForSuspension>
                     </address>
                  </endpoint>
               </failover>
            </endpoint>
         </call>
         <log level="full"/>
      </inSequence>
      <outSequence>
         <send/>
      </outSequence>
   </target>
   <description/>
</proxy>
                                

2) Up the below Java Application to reproduce the Connection Reset Exception ( http://localhost:8290 ).

package com.custom.connection.peer;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.ObjectOutputStream;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;

public class EchoServer {
	public static void main(String[] args) throws IOException {
		int portNumber = 8290;
		ServerSocket serverSocket = new ServerSocket(portNumber);
		while (true) {
			try {
				Socket clientSocket = serverSocket.accept();
				clientSocket.setSoLinger(true, 0);
				PrintWriter out = new PrintWriter(
						clientSocket.getOutputStream(), true);
				BufferedReader in = new BufferedReader(new InputStreamReader(
						clientSocket.getInputStream()));
				String inputLine;

				while ((inputLine = in.readLine()) != null) {
					System.out.println("test..");
					System.out.println(inputLine);
					clientSocket.close();					
				}
			} catch (Exception ex) {
				System.out.println("error");
			}
		}
	}
	
}

3) Send a request to proxy service and we can see that the retry is not happening and ESB will wait after the lat line of this log.

[2017-06-07 12:20:52,886] DEBUG - SourceHandler http-incoming-1: Connected
[2017-06-07 12:20:52,888] DEBUG - wire >> "POST /services/FailoverCheckProxy HTTP/1.1[\r][\n]"
[2017-06-07 12:20:52,888] DEBUG - wire >> "Accept-Encoding: gzip,deflate[\r][\n]"
[2017-06-07 12:20:52,888] DEBUG - wire >> "Content-Type: text/xml;charset=UTF-8[\r][\n]"
[2017-06-07 12:20:52,888] DEBUG - wire >> "SOAPAction: urn:echoString[\r][\n]"
[2017-06-07 12:20:52,888] DEBUG - wire >> "Content-Length: 319[\r][\n]"
[2017-06-07 12:20:52,889] DEBUG - wire >> "Host: ajanthan-ThinkPad-T440p:8280[\r][\n]"
[2017-06-07 12:20:52,889] DEBUG - wire >> "Connection: Keep-Alive[\r][\n]"
[2017-06-07 12:20:52,889] DEBUG - wire >> "User-Agent: Apache-HttpClient/4.1.1 (java 1.5)[\r][\n]"
[2017-06-07 12:20:52,889] DEBUG - wire >> "[\r][\n]"
[2017-06-07 12:20:52,889] DEBUG - wire >> "<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:echo="http://echo.services.core.carbon.wso2.org">[\n]"
[2017-06-07 12:20:52,889] DEBUG - wire >> "   <soapenv:Header/>[\n]"
[2017-06-07 12:20:52,889] DEBUG - wire >> "   <soapenv:Body>[\n]"
[2017-06-07 12:20:52,889] DEBUG - wire >> "      <echo:echoString>[\n]"
[2017-06-07 12:20:52,890] DEBUG - wire >> "         <!--Optional:-->[\n]"
[2017-06-07 12:20:52,890] DEBUG - wire >> "         <in>Test From Client</in>[\n]"
[2017-06-07 12:20:52,890] DEBUG - wire >> "      </echo:echoString>[\n]"
[2017-06-07 12:20:52,890] DEBUG - wire >> "   </soapenv:Body>[\n]"
[2017-06-07 12:20:52,890] DEBUG - wire >> "</soapenv:Envelope>"
[2017-06-07 12:20:52,895] DEBUG - SourceHandler http-incoming-1: POST /services/FailoverCheckProxy HTTP/1.1
[2017-06-07 12:20:52,905] DEBUG - SourceHandler http-incoming-1: Input ready
[2017-06-07 12:20:52,906] DEBUG - ServerWorker Starting a new Server Worker instance
[2017-06-07 12:20:52,906] DEBUG - SourceHandler http-incoming-1: Content decoder [content length: 319; pos: 319; completed: true]
[2017-06-07 12:20:52,915] DEBUG - RelayUtils Content Type is text/xml;charset=UTF-8
[2017-06-07 12:20:52,921]  INFO - LogMediator STATUS = -----------------FailoverCheckProxy Invoked----------------------
[2017-06-07 12:20:52,922]  INFO - FailoverEndpoint [AJAN] Endpoint Name New: EP1
[2017-06-07 12:20:52,923]  INFO - FailoverEndpoint [AJAN] endpoint.readyToSend() Value: true
[2017-06-07 12:20:52,923]  INFO - FailoverEndpoint [AJAN] Inside if endpoint.readyToSend() value: true
[2017-06-07 12:20:52,923] DEBUG - RelayUtils Content Type is text/xml;charset=UTF-8
[2017-06-07 12:20:52,929]  INFO - TimeoutHandler This engine will expire all callbacks after : 120 seconds, irrespective of the timeout action, after the specified or optional timeout
[2017-06-07 12:20:52,934] DEBUG - TargetConnections Trying to get a connection {}->http://localhost:8290
[2017-06-07 12:20:52,935] DEBUG - HostConnections Creating new connection pool: {}->http://localhost:8290
[2017-06-07 12:20:52,936] DEBUG - ConnectCallback Connected to remote address: localhost/127.0.0.1:8290 from local address: /127.0.0.1:24747
[2017-06-07 12:20:52,941] DEBUG - TargetHandler http-outgoing-1: Connected (org.apache.synapse.transport.passthru.connections.HostConnections@6ddc1846)
[2017-06-07 12:20:52,942] DEBUG - HostConnections New connection {}->http://localhost:8290 is added to the free list
[2017-06-07 12:20:52,942] DEBUG - DeliveryAgent Submitting new request to the connection: http-outgoing-1
[2017-06-07 12:20:52,946] DEBUG - TargetHandler http-outgoing-1: Request ready
[2017-06-07 12:20:52,950] DEBUG - TargetHandler http-outgoing-1: Output ready
[2017-06-07 12:20:52,951] DEBUG - TargetHandler http-outgoing-1: Content encoder [chunk-coded; completed: true]
[2017-06-07 12:20:52,951] DEBUG - wire << "POST  HTTP/1.1[\r][\n]"
[2017-06-07 12:20:52,951] DEBUG - wire << "Accept-Encoding: gzip,deflate[\r][\n]"
[2017-06-07 12:20:52,951] DEBUG - wire << "Content-Type: text/xml; charset=UTF-8[\r][\n]"
[2017-06-07 12:20:52,951] DEBUG - wire << "SOAPAction: "urn:echoString"[\r][\n]"
[2017-06-07 12:20:52,952] DEBUG - wire << "Transfer-Encoding: chunked[\r][\n]"
[2017-06-07 12:20:52,952] DEBUG - wire << "Host: localhost:8290[\r][\n]"
[2017-06-07 12:20:52,952] DEBUG - wire << "Connection: Keep-Alive[\r][\n]"
[2017-06-07 12:20:52,952] DEBUG - wire << "User-Agent: Synapse-PT-HttpComponents-NIO[\r][\n]"
[2017-06-07 12:20:52,952] DEBUG - wire << "[\r][\n]"
[2017-06-07 12:20:52,952] DEBUG - wire << "14b[\r][\n]"
[2017-06-07 12:20:52,952] DEBUG - wire << "<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:echo="http://echo.services.core.carbon.wso2.org"><soapenv:Body>[\n]"
[2017-06-07 12:20:52,952] DEBUG - wire << "      <echo:echoString>[\n]"
[2017-06-07 12:20:52,953] DEBUG - wire << "         <!--Optional:-->[\n]"
[2017-06-07 12:20:52,953] DEBUG - wire << "         <in>Test From Client</in>[\n]"
[2017-06-07 12:20:52,953] DEBUG - wire << "      </echo:echoString>[\n]"
[2017-06-07 12:20:52,954] DEBUG - wire << "   </soapenv:Body></soapenv:Envelope>[\r][\n]"
[2017-06-07 12:20:52,954] DEBUG - wire << "0[\r][\n]"
[2017-06-07 12:20:52,955] DEBUG - wire << "[\r][\n]"
[2017-06-07 12:20:53,234] ERROR - TargetHandler http-outgoing-1: Connection reset by peer
java.io.IOException: Connection reset by peer
	at sun.nio.ch.FileDispatcherImpl.read0(Native Method)
	at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:39)
	at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223)
	at sun.nio.ch.IOUtil.read(IOUtil.java:197)
	at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:384)
	at org.apache.synapse.transport.http.conn.LoggingIOSession$LoggingByteChannel.read(LoggingIOSession.java:188)
	at org.apache.http.impl.nio.reactor.SessionInputBufferImpl.fill(SessionInputBufferImpl.java:164)
	at org.apache.http.impl.nio.codecs.AbstractMessageParser.fillBuffer(AbstractMessageParser.java:136)
	at org.apache.synapse.transport.http.conn.LoggingNHttpClientConnection$LoggingNHttpMessageParser.fillBuffer(LoggingNHttpClientConnection.java:214)
	at org.apache.http.impl.nio.DefaultNHttpClientConnection.consumeInput(DefaultNHttpClientConnection.java:241)
	at org.apache.synapse.transport.http.conn.LoggingNHttpClientConnection.consumeInput(LoggingNHttpClientConnection.java:108)
	at org.apache.synapse.transport.passthru.ClientIODispatch.onInputReady(ClientIODispatch.java:83)
	at org.apache.synapse.transport.passthru.ClientIODispatch.onInputReady(ClientIODispatch.java:41)
	at org.apache.http.impl.nio.reactor.AbstractIODispatch.inputReady(AbstractIODispatch.java:113)
	at org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:159)
	at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:338)
	at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:316)
	at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:277)
	at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:105)
	at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:586)
	at java.lang.Thread.run(Thread.java:745)
[2017-06-07 12:20:53,236]  WARN - TargetHandler Exception occured while before reading the response
[2017-06-07 12:20:53,236] DEBUG - TargetHandler http-outgoing-1: I/O error (Probably the keep-alive connection was closed):Connection reset by peer
[2017-06-07 12:20:53,237] DEBUG - TargetHandler http-outgoing-1: Closed
[2017-06-07 12:20:53,238] DEBUG - TargetHandler Connection closed by target host while in state REQUEST_READY. Response code : 2
[2017-06-07 12:20:53,238] DEBUG - TargetHandler http-outgoing-1: Keep-Alive Connection closed
[2017-06-07 12:20:53,241] DEBUG - TargetErrorHandler Sending Fault for Request with Message ID : urn:uuid:6723af35-74fb-48a7-bf19-1c4cfb0011f0
[2017-06-07 12:20:53,242]  WARN - EndpointContext Endpoint : EP1 is marked as TIMEOUT and will be retried : 3 more time/s after : Wed Jun 07 12:20:53 IST 2017 until its marked SUSPENDED for failure
[2017-06-07 12:20:53,243]  WARN - FailoverEndpoint Endpoint [CBSSPersonServiceBackendEP_failover] Detect a Failure in a child endpoint : Endpoint [EP1]
[2017-06-07 12:20:53,243]  INFO - FailoverEndpoint [AJAN] Endpoint Name New: EP1
[2017-06-07 12:20:53,243]  INFO - FailoverEndpoint [AJAN] endpoint.readyToSend() Value: true
[2017-06-07 12:20:53,243]  INFO - FailoverEndpoint [AJAN] Inside if endpoint.readyToSend() value: true
[2017-06-07 12:20:53,244] DEBUG - RelayUtils Content Type is text/xml;charset=UTF-8
[2017-06-07 12:20:53,245] DEBUG - TargetConnections Trying to get a connection {}->http://localhost:8290
[2017-06-07 12:20:53,245] DEBUG - ConnectCallback Connected to remote address: localhost/127.0.0.1:8290 from local address: /127.0.0.1:24749
[2017-06-07 12:20:53,246] DEBUG - TargetHandler http-outgoing-2: Connected (org.apache.synapse.transport.passthru.connections.HostConnections@6ddc1846)
[2017-06-07 12:20:53,246] DEBUG - HostConnections New connection {}->http://localhost:8290 is added to the free list
[2017-06-07 12:20:53,246] DEBUG - DeliveryAgent Submitting new request to the connection: http-outgoing-2

Thanks.
Ajanthan.






[ESBJAVA-5126] PATCH request not working in blocking mode. Created: 19/Jun/17  Updated: 20/Jun/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 5.0.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Kanapriya Kuleswararajan Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

1. PATCH request not working with blocking mode. If the request is PATCH , then it execute the sendViaPost [1] and it gives following error.

Non - blocking

[2017-06-14 14:58:36,476] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "PATCH /api/data/v8.2/accounts(91618256718-8a4e-e711-80f7-c4346bad279c)?$select=name,creditonhold,address1_latitude HTTP/1.1[\r][\n]"
[2017-06-14 14:58:36,476] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "Prefer: return=representation[\r][\n]"
[2017-06-14 14:58:36,476] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "Accept-Language: en-US,en;q=0.8[\r][\n]"
[2017-06-14 14:58:36,476] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "Authorization: Bearer SUzI1NiIsIng1dCI6IjlGWERwYmZNRlQyU3ZRdVhoODQ2WVR3RUlCdyIsImtpZCI6IjlGWERwYmZNRlQyU3ZRdVhoODQ2WVR3RUlCdyJ9.eyJhdWQiOiJodHRwczovL3dzbzIxMjM0LmNybTUuZHluYW1pY3MuY29tLyIsImlzcyI6Imh0dHBzOi8vc3RzLndpbmRvd3MubmV0LzIxMzliNDZmLWE3ZjQtNGJiMS1iNDU4LWE0OWFmYWNjY2QwNS8iLCJpYXQiOjE0OTc0MzA0MzAsIm5iZiI6MTQ5NzQzMDQzMCwiZXhwIjoxNDk3NDM0MzMwLCJhY3IiOiIxIiwiYWlvIjoiQVNRQTIvOERBQUFBbWV5QitsbXdTUXJCM3luSTBsMVRtY250blNHOUJjQzh6MEZhOUVOYzUrMD0iLCJhbXIiOlsicHdkIl0sImFwcGlkIjoiYzEyZWM1YmUtODM1Ni00ZWRmLWI5YTQtY2Q1NjNlZDA5MTVhIiwiYXBwaWRhY3IiOiIxIiwiZmFtaWx5X25hbWUiOiJwcml5YSIsImdpdmVuX25hbWUiOiJrYW5hIiwiaXBhZGRyIjoiMjAzLjk0Ljk1LjQiLCJuYW1lIjoia2FuYSBwcml5YSIsIm9pZCI6ImZlNmY4ODVlLTk5ZWItNGJjMC1hMmRhLTZkYzU2ZmMxNDYxNiIsInBsYXRmIjoiMTQiLCJwdWlkIjoiMTAwMzAwMDBBMUJDRTk1RiIsInNjcCI6InVzZXJfaW1wZXJzb25hdGlvbiIsInN1YiI6IkJub3c0T2JEcEoyWElGSWJVR1hfZ2VlaWRDRWV5WC13NFQzYU1WNWRBZjAiLCJ0aWQiOiIyMTM5YjQ2Zi1hN2Y0LTRiYjEtYjQ1OC1hNDlhZmFjY2NkMDUiLCJ1bmlxdWVfbmFtZSI6ImthbmFAd3NvMjEyMzQub25taWNyb3NvZnQuY29tIiwidXBuIjoia2FuYUB3c28yMTIzNC5vbm1pY3Jvc29mdC5jb20iLCJ2ZXIiOiIxLjAiLCJ3aWRzIjpbIjYyZTkwMzk0LTY5ZjUtNDIzNy05MTkwLTAxMjE3NzE0NWUxMCJdfQ.bKyHO4wmp5JFBJb-0OI7OdeHguF37Zd3z2vgfgstn9iF7uP_PtuEO6Rxdtp07mVKZmNqP50GeZm62FZ74VgB8eDnxQP9mQXEe2rBU94oLVzc9r0bQ1YGqF88RQVcXoM-Q4U3J9rtyuZD1iEog1UsS43krG22YHQ5c-1234Cwbc1noz_bSpx798A1p5-KSD3mckVabkpxn__OU1lyygEfY6FiieuHQ0iT8nxmguGdH371XesxLzyJFOfZLDPHierLMUctQj7e2d_ClbA5nV7CjPfx7PitNVM1owxdnbtSRzkIUKn1gr8cI_0SY7hA4NGF3IrVxoIGcQ1tXaJKDPBqZ2FtozQgvfi61g[\r][\n]"
[2017-06-14 14:58:36,476] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "Action: urn:updateEntityWithDataReturnedOrSinglePropertyValue[\r][\n]"
[2017-06-14 14:58:36,477] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "Accept-Encoding: gzip, deflate[\r][\n]"
[2017-06-14 14:58:36,477] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "Origin: chrome-extension://fhbjgbiflinjbdggehcddcbncdddomop[\r][\n]"
[2017-06-14 14:58:36,477] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "Postman-Token: c1e955d9-5307-7369-6fd3-8c4cdefd56da[\r][\n]"
[2017-06-14 14:58:36,477] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "Content-Type: application/json[\r][\n]"
[2017-06-14 14:58:36,477] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "Accept: /[\r][\n]"
[2017-06-14 14:58:36,477] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "Cache-Control: no-cache[\r][\n]"
[2017-06-14 14:58:36,477] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "Content-Length: 33[\r][\n]"
[2017-06-14 14:58:36,477] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "Host: wso21234.crm5.dynamics.com[\r][\n]"
[2017-06-14 14:58:36,477] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "Connection: Keep-Alive[\r][\n]"
[2017-06-14 14:58:36,477] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "User-Agent: Synapse-PT-HttpComponents-NIO[\r][\n]"
[2017-06-14 14:58:36,478] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "[\r][\n]"
[2017-06-14 14:58:36,478] DEBUG - wire HTTPS-Sender I/O dispatcher-3 << "

{"name":"Updated Sample Account"}

"
[2017-06-14 14:58:37,828] DEBUG - wire HTTPS-Sender I/O dispatcher-3 >> "HTTP/1.1 200 OK[\r][\n]"

Blocking

[2017-06-14 15:00:13,791] DEBUG - header >> "POST /api/data/v8.2/accounts(91618256718-8a4e-e711-80f7-c4346bad279c)?$select=name,creditonhold,address1_latitude HTTP/1.1[\r][\n]"
[2017-06-14 15:00:13,795] DEBUG - header >> "Content-Type: application/json; charset=UTF-8[\r][\n]"
[2017-06-14 15:00:13,795] DEBUG - header >> "Accept: /[\r][\n]"
[2017-06-14 15:00:13,795] DEBUG - header >> "Accept-Encoding: gzip, deflate[\r][\n]"
[2017-06-14 15:00:13,795] DEBUG - header >> "Accept-Language: en-US,en;q=0.8[\r][\n]"
[2017-06-14 15:00:13,795] DEBUG - header >> "Action: urn:updateEntityWithDataReturnedOrSinglePropertyValue[\r][\n]"
[2017-06-14 15:00:13,795] DEBUG - header >> "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IjlGWERwYmZNRlQyU3ZRdVhoODQ2WVR3RUlCdyIsImtpZCI6IjlGWERwYmZNRlQyU3ZRdVhoODQ2WVR3RUlCdyJ9.eyJhdWQiOiJodHRwczovL3dzbzIxMjM0LmNybTUuZHluYW1pY3MuY29tLyIsImlzcyI6Imh0dHBzOi8vc3RzLndpbmRvd3MubmV0LzIxMzliNDZmLWE3ZjQtNGJiMS1iNDU4LWE0OWFmYWNjY2QwNS8iLCJpYXQiOjE0OTc0MzA0MzAsIm5iZiI6MTQ5NzQzMDQzMCwiZXhwIjoxNDk3NDM0MzMwLCJhY3IiOiIxIiwiYWlvIjoiQVNRQTIvOERBQUFBbWV5QitsbXdTUXJCM3luSTBsMVRtY250blNHOUJjQzh6MEZhOUVOYzUrMD0iLCJhbXIiOlsicHdkIl0sImFwcGlkIjoiYzEyZWM1YmUtODM1Ni00ZWRmLWI5YTQtY2Q1NjNlZDA5MTVhIiwiYXBwaWRhY3IiOiIxIiwiZmFtaWx5X25hbWUiOiJwcml5YSIsImdpdmVuX25hbWUiOiJrYW5hIiwiaXBhZGRyIjoiMjAzLjk0Ljk1LjQiLCJuYW1lIjoia2FuYSBwcml5YSIsIm9pZCI6ImZlNmY4ODVlLTk5ZWItNGJjMC1hMmRhLTZkYzU2ZmMxNDYxNiIsInBsYXRmIjoiMTQiLCJwdWlkIjoiMTAwMzAwMDBBMUJDRTk1RiIsInNjcCI6InVzZXJfaW1wZXJzb25hdGlvbiIsInN1YiI6IkJub3c0T2JEcEoyWElGSWJVR1hfZ2VlaWRDRWV5WC13NFQzYU1WNWRBZjAiLCJ0aWQiOiIyMTM5YjQ2Zi1hN2Y0LTRiYjEtYjQ1OC1hNDlhZmFjY2NkMDUiLCJ1bmlxdWVfbmFtZSI6ImthbmFAd3NvMjEyMzQub25taWNyb3NvZnQuY29tIiwidXBuIjoia2FuYUB3c28yMTIzNC5vbm1pY3Jvc29mdC5jb20iLCJ2ZXIiOiIxLjAiLCJ3aWRzIjpbIjYyZTkwMzk0LTY5ZjUtNDIzNy05MTkwLTAxMjE3NzE0NWUxMCJdfQ.bKyHO4wmp5JFBJb-0OI7OdeHguF37Zd3z2stn9iF7uP_PtuEO6Rxdtp07mVKZmNqP50GeZm62FZ74VgB8eDnxQP9mQXEe2rBU94oLVzc9r0bQ1YGqF88RQVcXoM-Q4U3J9ZD1iEog1UsS43krG22YHQ5c-Cwbc1noz_bSpx798A1p5-KSD3mckVabkpxn__OU1lyygEfY6FiieuHQ0iT8nxmguGdH371XesxLzyJFOfZLDPHierLMUctQj7e2d_ClbA5nV7CjPfx7PitNVM1owxdnbtSRzkIUKn1gr8cI_0SY7hA4NGF3IrVxoIGcQ1tXaJKDPBqZ2FtozQgvfi61g[\r][\n]"
[2017-06-14 15:00:13,796] DEBUG - header >> "Cache-Control: no-cache[\r][\n]"
[2017-06-14 15:00:13,796] DEBUG - header >> "Origin: chrome-extension://fhbjgbiflinjbdggehcddcbncdddomop[\r][\n]"
[2017-06-14 15:00:13,796] DEBUG - header >> "Postman-Token: 5adbade0-eb4c-d552-202a-54ff19ee0dfa[\r][\n]"
[2017-06-14 15:00:13,796] DEBUG - header >> "Prefer: return=representation[\r][\n]"
[2017-06-14 15:00:13,796] DEBUG - header >> "User-Agent: Axis2[\r][\n]"
[2017-06-14 15:00:13,796] DEBUG - header >> "Host: wso21234.crm5.dynamics.com[\r][\n]"
[2017-06-14 15:00:13,796] DEBUG - header >> "Content-Length: 33[\r][\n]"
[2017-06-14 15:00:13,797] DEBUG - header >> "[\r][\n]"
[2017-06-14 15:00:13,797] DEBUG - content >> "

{"name":"Updated Sample Account"}

"
[2017-06-14 15:00:13,953] DEBUG - header << "HTTP/1.1 405 Method Not Allowed[\r][\n]"
[2017-06-14 15:00:13,953] DEBUG - header << "HTTP/1.1 405 Method Not Allowed[\r][\n]"
[2017-06-14 15:00:13,954] DEBUG - header << "Cache-Control: no-cache[\r][\n]"
[2017-06-14 15:00:13,954] DEBUG - header << "Pragma: no-cache[\r][\n]"
[2017-06-14 15:00:13,954] DEBUG - header << "Allow: GET,PUT,PATCH,DELETE[\r][\n]"
[2017-06-14 15:00:13,955] DEBUG - header << "Content-Type: application/json; odata.metadata=minimal[\r][\n]"
[2017-06-14 15:00:13,955] DEBUG - header << "Expires: -1[\r][\n]"
[2017-06-14 15:00:13,955] DEBUG - header << "Server: Microsoft-IIS/8.5[\r][\n]"
[2017-06-14 15:00:13,955] DEBUG - header << "REQ_ID: 8ba04189-7459-4837-86e7-dce8df6a9ac1[\r][\n]"
[2017-06-14 15:00:13,955] DEBUG - header << "Set-Cookie: ReqClientId=582ab259-22e7-4130-81af-02700cf96a92; expires=Tue, 14-Jun-2067 09:30:13 GMT; path=/; secure; HttpOnly[\r][\n]"
[2017-06-14 15:00:13,956] DEBUG - header << "Access-Control-Allow-Origin: *[\r][\n]"
[2017-06-14 15:00:13,956] DEBUG - header << "Access-Control-Expose-Headers: Preference-Applied,OData-EntityId,Location,ETag,OData-Version,Content-Encoding,Transfer-Encoding,Content-Length,Retry-After[\r][\n]"
[2017-06-14 15:00:13,956] DEBUG - header << "OData-Version: 4.0[\r][\n]"
[2017-06-14 15:00:13,956] DEBUG - header << "X-AspNet-Version: 4.0.30319[\r][\n]"
[2017-06-14 15:00:13,956] DEBUG - header << "X-Powered-By: ASP.NET[\r][\n]"
[2017-06-14 15:00:13,957] DEBUG - header << "Date: Wed, 14 Jun 2017 09:30:13 GMT[\r][\n]"
[2017-06-14 15:00:13,957] DEBUG - header << "Content-Length: 2149[\r][\n]"
[2017-06-14 15:00:13,957] DEBUG - header << "Set-Cookie: crmf5cookie=!CJwKVxgHGYXTSBLJGlBgYdD3j/Njchy9e3PTBiqxdXWXGrr92QWgIIwdtlLOkedogQKJlLfUu515Fyg=;secure; path=/[\r][\n]"
[2017-06-14 15:00:13,957] DEBUG - header << "Strict-Transport-Security: max-age=31536000; includeSubDomains[\r][\n]"
[2017-06-14 15:00:13,957] DEBUG - header << "[\r][\n]"
[2017-06-14 15:00:13,962] DEBUG - content << "{[\r][\n]"
[2017-06-14 15:00:13,962] DEBUG - content << " "error":{[\r][\n]"
[2017-06-14 15:00:13,962] DEBUG - content << " "code":"","message":"Unmapped Request found, PathTemplate:~/entityset/key, HttpVerb:POST","innererror":

{[\r][\n]" [2017-06-14 15:00:13,962] DEBUG - content << " "message":"Unmapped Request found, PathTemplate:~/entityset/key, HttpVerb:POST","type":"Microsoft.Crm.CrmHttpException","stacktrace":" at Microsoft.Crm.Extensibility.OData.EntityController.HandleUnmappedRequest(ODataPath path)\r\n at lambda_method(Closure , Object , Object[] )\r\n at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass10.<GetExecutor>b__9(Object instance, Object[] methodParameters)\r\n at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.Execute(Objec" [2017-06-14 15:00:13,963] DEBUG - content << "t instance, Object[] arguments)\r\n at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary`2 arguments, CancellationToken cancellationToken)\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()\r\n at System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__0.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()\r\n at System.Web.Http.Controllers.ActionFilterResult.<Exe" [2017-06-14 15:00:13,963] DEBUG - content << "cuteAsync>d__2.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()\r\n at System.Web.Http.Dispatcher.HttpControllerDispatcher.<SendAsync>d__1.MoveNext()"[\r][\n]" [2017-06-14 15:00:13,963] DEBUG - content << " }

[\r][\n]"
[2017-06-14 15:00:13,964] DEBUG - content << " }[\r][\n]"
[2017-06-14 15:00:13,964] DEBUG - content << "}"
[2017-06-14 15:00:13,966] INFO - HTTPSender Unable to sendViaPost to urlhttps://wso21234.crm5.dynamics.com/api/data/v8.2/accounts(31618218-8a4e-e711-80f7-c4346bad279c)?$select=name,creditonhold,address1_latitude
org.apache.axis2.AxisFault: Transport error: 405 Error: Method Not Allowed
at org.apache.axis2.transport.http.HTTPSender.handleResponse(HTTPSender.java:326)
at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:196)
at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:77)
at org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:451)
at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:278)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:430)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:225)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:149)
at org.apache.synapse.message.senders.blocking.BlockingMsgSender.sendReceive(BlockingMsgSender.java:293)
at org.apache.synapse.message.senders.blocking.BlockingMsgSender.send(BlockingMsgSender.java:194)
at org.apache.synapse.mediators.builtin.CallMediator.handleBlockingCall(CallMediator.java:125)
at org.apache.synapse.mediators.builtin.CallMediator.mediate(CallMediator.java:97)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:97)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:59)
at org.apache.synapse.mediators.filters.FilterMediator.mediate(FilterMediator.java:169)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:97)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:59)
at org.apache.synapse.mediators.filters.FilterMediator.mediate(FilterMediator.java:169)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:97)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:59)
at org.apache.synapse.mediators.template.TemplateMediator.mediate(TemplateMediator.java:104)
at org.apache.synapse.mediators.template.InvokeMediator.mediate(InvokeMediator.java:148)
at org.apache.synapse.mediators.template.InvokeMediator.mediate(InvokeMediator.java:84)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:97)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:59)
at org.apache.synapse.config.xml.AnonymousListMediator.mediate(AnonymousListMediator.java:37)
at org.apache.synapse.config.xml.SwitchCase.mediate(SwitchCase.java:69)
at org.apache.synapse.mediators.filters.SwitchMediator.mediate(SwitchMediator.java:134)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:97)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:59)
at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:158)
at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:210)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
at org.apache.synapse.transport.passthru.ServerWorker.processNonEntityEnclosingRESTHandler(ServerWorker.java:325)
at org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:371)
at org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:151)
at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
[2017-06-14 15:00:13,988] INFO - LogMediator To: https://wso21234.crm5.dynamics.com/api/data/v8.2/accounts(31618218-8a4e-e711-80f7-c4346bad279c)?$select=name,creditonhold,address1_latitude, MessageID: urn:uuid:73a06200-8cf2-4b5d-a03e-d19ee4ff5bdd, Direction: request, MESSAGE = Executing default 'fault' sequence, ERROR_CODE = 401001, ERROR_MESSAGE = Transport error: 405 Error: Method Not Allowed, Payload:

{"name":"Updated Sample Account"}

[2017-06-14 15:00:13,996] DEBUG - wire HTTP-Listener I/O dispatcher-1 << "HTTP/1.1 202 Accepted[\r][\n]"
[2017-06-14 15:00:13,997] DEBUG - wire HTTP-Listener I/O dispatcher-1 << "Date: Wed, 14 Jun 2017 09:30:13 GMT[\r][\n]"
[2017-06-14 15:00:13,997] DEBUG - wire HTTP-Listener I/O dispatcher-1 << "Transfer-Encoding: chunked[\r][\n]"
[2017-06-14 15:00:13,997] DEBUG - wire HTTP-Listener I/O dispatcher-1 << "Connection: keep-alive[\r][\n]"
[2017-06-14 15:00:13,997] DEBUG - wire HTTP-Listener I/O dispatcher-1 << "[\r][\n]"
[2017-06-14 15:00:13,997] DEBUG - wire HTTP-Listener I/O dispatcher-1 << "0[\r][\n]"
[2017-06-14 15:00:13,998] DEBUG - wire HTTP-Listener I/O dispatcher-1 << "[\r][\n]"

[1] https://github.com/wso2/wso2-axis2/blob/master/modules/transport/http/src/org/apache/axis2/transport/http/HTTPSender.java#L77






[ESBJAVA-4763] NullPointerException while sending IDOC to SAP Created: 16/Jul/16  Updated: 28/Sep/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.8.1
Fix Version/s: None

Type: Bug Priority: High
Reporter: Muralidharan Balanandan Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Text File DebuggingWithWSO2SuggestedParameters_sapDebugEnabled.txt     Text File Test_SAP_XSLT.txt     XML File idocTestXSLT.xslt     File sapdelts.dest     Text File test_sap.txt    
Severity: Blocker
Estimated Complexity: Advanced
Test cases added: No

 Description   

Facing the following error while sending the IDOC to SAP.

Transport configurations are fine (Even BAPI message to SAP is successful)

TID: [0] [ESB] [2016-07-12 13:50:39,213] ERROR

{org.wso2.carbon.transports.sap.SAPTransportSender} - Error while sending an IDoc to the EPR : idoc:/sapdelts {org.wso2.carbon.transports.sap.SAPTransportSender}

java.lang.NullPointerException
at org.wso2.carbon.transports.sap.idoc.DefaultIDocXMLMapper.closeStream(DefaultIDocXMLMapper.java:68)
at org.wso2.carbon.transports.sap.idoc.DefaultIDocXMLMapper.getDocumentList(DefaultIDocXMLMapper.java:59)
at org.wso2.carbon.transports.sap.SAPTransportSender.getIDocs(SAPTransportSender.java:163)
at org.wso2.carbon.transports.sap.SAPTransportSender.sendMessage(SAPTransportSender.java:103)
at org.apache.axis2.transport.base.AbstractTransportSender.invoke(AbstractTransportSender.java:112)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.send(DynamicAxisOperation.java:185)
at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.executeImpl(DynamicAxisOperation.java:167)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:149)
at org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(Axis2FlexibleMEPClient.java:482)
at org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java:59)
at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:338)
at org.apache.synapse.endpoints.AbstractEndpoint.send(AbstractEndpoint.java:333)
at org.apache.synapse.endpoints.AddressEndpoint.send(AddressEndpoint.java:59)
at org.apache.synapse.mediators.builtin.CallMediator.mediate(CallMediator.java:114)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:77)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47)
at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:131)
at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:166)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
at org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:411)
at org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:183)
at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
TID: [0] [ESB] [2016-07-12 13:50:39,215] ERROR

{org.apache.synapse.core.axis2.Axis2Sender} - Unexpected error during sending message out {org.apache.synapse.core.axis2.Axis2Sender}

org.apache.axis2.AxisFault: Error while sending an IDoc to the EPR : idoc:/sapdelts
at org.apache.axis2.transport.base.AbstractTransportSender.handleException(AbstractTransportSender.java:226)
at org.wso2.carbon.transports.sap.SAPTransportSender.sendMessage(SAPTransportSender.java:136)
at org.apache.axis2.transport.base.AbstractTransportSender.invoke(AbstractTransportSender.java:112)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.send(DynamicAxisOperation.java:185)
at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.executeImpl(DynamicAxisOperation.java:167)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:149)
at org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(Axis2FlexibleMEPClient.java:482)
at org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java:59)
at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:338)
at org.apache.synapse.endpoints.AbstractEndpoint.send(AbstractEndpoint.java:333)
at org.apache.synapse.endpoints.AddressEndpoint.send(AddressEndpoint.java:59)
at org.apache.synapse.mediators.builtin.CallMediator.mediate(CallMediator.java:114)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:77)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47)



 Comments   
Comment by Muralidharan Balanandan [ 19/Jul/16 ]

Proxy used to send IDOC to SAP

Comment by Muralidharan Balanandan [ 19/Jul/16 ]

the .dest file used to connect to SAP

Comment by Chanaka Fernando [ 20/Jul/16 ]

This looks like an issue with the connectivity from the ESB to SAP over IDOC transport or an error with the IDOC message. Could you please enable the error handler with the following parameters for this proxy and attach the resulting log.

<parameter name="transport.sap.enableTIDHandler">enabled</parameter>
<parameter name="transport.sap.enableErrorListener">enabled</parameter>

Another thing you can do is to check the validity of the IDOC message which you are sending to the SAP system from ESB. If the message is not formatted properly, you will get this kind of error.

Comment by Chanaka Fernando [ 20/Jul/16 ]

Reducing the priority since this looks like a configuration issue.

Comment by Muralidharan Balanandan [ 20/Jul/16 ]

Thanks Chanaka Fernando.. Can you please share some reference to valid IDOC message or message content. It would be very helpful.

Comment by Muralidharan Balanandan [ 21/Jul/16 ]

We validated the IDOC message and its fine. As you suggested, added the above parameters and tried. Attaching the latest proxy. XSLT used and the logs.
Kindly have a look and let us know your findings.

Comment by Muralidharan Balanandan [ 26/Jul/16 ]

Receive the following error code in trace.

TID: [0] [ESB] [2016-07-26 10:09:29,255] WARN

{org.apache.synapse.FaultHandler} - ERROR_CODE : 8001 {org.apache.synapse.FaultHandler}

TID: [0] [ESB] [2016-07-26 10:09:29,255] WARN

{org.apache.synapse.FaultHandler} - ERROR_MESSAGE : null {org.apache.synapse.FaultHandler}

TID: [0] [ESB] [2016-07-26 10:09:29,255] WARN

{org.apache.synapse.FaultHandler} - ERROR_DETAIL : null {org.apache.synapse.FaultHandler}

TID: [0] [ESB] [2016-07-26 10:09:29,255] WARN

{org.apache.synapse.FaultHandler} - ERROR_EXCEPTION : null {org.apache.synapse.FaultHandler}

TID: [0] [ESB] [2016-07-26 10:09:29,256] WARN

{org.apache.synapse.FaultHandler} - FaultHandler : Endpoint [sapidocendpoint] {org.apache.synapse.FaultHandler}

TID: [0] [ESB] [2016-07-26 10:09:29,256] WARN

{org.apache.synapse.endpoints.EndpointContext} - Endpoint : sapidocendpoint will be marked SUSPENDED as it failed {org.apache.synapse.endpoints.EndpointContext}

TID: [0] [ESB] [2016-07-26 10:09:29,256] WARN

{org.apache.synapse.endpoints.EndpointContext} - Suspending endpoint : sapidocendpoint - current suspend duration is : 30000ms - Next retry after : Tue Jul 26 10:09:59 CLT 2016 {org.apache.synapse.endpoints.EndpointContext}

TID: [0] [ESB] [2016-07-26 10:09:29,256] ERROR

{org.wso2.carbon.transports.sap.SAPTransportSender} - Error while sending an IDoc to the EPR : idoc:/sapdelts {org.wso2.carbon.transports.sap.SAPTransportSender}

java.lang.NullPointerException
at org.wso2.carbon.transports.sap.idoc.DefaultIDocXMLMapper.closeStream(DefaultIDocXMLMapper.java:86)
at org.wso2.carbon.transports.sap.idoc.DefaultIDocXMLMapper.getDocumentList(DefaultIDocXMLMapper.java:79)
at org.wso2.ca

Comment by Evanthika Amarasiri [ 28/Sep/16 ]

I too faced the same issue. The reason was that the IDOC message was not correct. When I used a correct IDOC message, the NPE disappeared and the IDOC was sent properly.





[ESBJAVA-4953] Improve permissions to create a read-only User Created: 15/Nov/16  Updated: 15/Nov/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Priority: High
Reporter: Chanaka Cooray Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

In the user creation process, there is no option to add read only permission for a user. We can only control the permissions of a role to disable some functionalities for a user who assigned to that particular role. For example, if we set mediation permission, then the user can view and change the configurations from the management console. There is no separate option to set edit or view permission. So Read only user is needed when there is a requirement to create a user to review the configurations, artifacts and without the capability to change anything.






[ESBJAVA-4932] RabbitMQ AMQP Inbound Endpoint exchange parameters are ignored Created: 25/Oct/16  Updated: 25/Oct/16

Status: Open
Project: WSO2 ESB
Component/s: Inbound Endpoints
Affects Version/s: 5.0.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Joao Mallmann Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: XML File RabbitMqInbound.xml    
Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

The exchange type, duration and auto deletion parameters from a Rabbitmq Inbound Endpoint are ignored when configurated on the inbound endpoint.






[ESBJAVA-4917] [Inbound endpoint] WSO2 MB - queue inbound endpoint with cache level set to 2 fails to consume messages Created: 07/Oct/16  Updated: 07/Oct/16

Status: Open
Project: WSO2 ESB
Component/s: Inbound Endpoints
Affects Version/s: 5.0.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Jason De Silva Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

ESB
Standalone ESB 5.0.0
JDK - 1.7.0_79
DB - h2

MB
Set up - 3 node MB cluster with rdbmsBasedCoordination enabled
JDK - IBM-JDK 8
OS - Node 1- RedHat 7.0 , Node 2- RedHat 6.6 , Node 3- RedHat 5.8
DB - MSSQL 2014


Severity: Major
Estimated Complexity: Moderate
Test cases added: No

 Description   

Created an inbound endpoint using the WSO2 MB type to subscribe to a queue. The transport.jms.CacheLevel was set to 2.

Issue
The ESB throws the below exception and fails to consume the published messages from the queue.

TID: [-1234] [] [2016-10-07 08:21:27,709] ERROR {org.wso2.carbon.inbound.endpoint.protocol.jms.factory.JMSConnectionFactory} -  JMS Exception while creating consumer. Object org.wso2.andes.client.AMQSession_0_8@5caaf5c2 has been closed {org.wso2.carbon.inbound.endpoint.protocol.jms.factory.JMSConnectionFactory}
javax.jms.IllegalStateException: Object org.wso2.andes.client.AMQSession_0_8@5caaf5c2 has been closed
	at org.wso2.andes.client.Closeable.checkNotClosed(Closeable.java:70)
	at org.wso2.andes.client.AMQSession.checkNotClosed(AMQSession.java:648)
	at org.wso2.andes.client.AMQSession$6.execute(AMQSession.java:2089)
	at org.wso2.andes.client.AMQSession$6.execute(AMQSession.java:2086)
	at org.wso2.andes.client.AMQConnectionDelegate_8_0.executeRetrySupport(AMQConnectionDelegate_8_0.java:342)
	at org.wso2.andes.client.AMQConnection$3.run(AMQConnection.java:655)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.wso2.andes.client.AMQConnection.executeRetrySupport(AMQConnection.java:652)
	at org.wso2.andes.client.failover.FailoverRetrySupport.execute(FailoverRetrySupport.java:102)
	at org.wso2.andes.client.AMQSession.createConsumerImpl(AMQSession.java:2084)
	at org.wso2.andes.client.AMQSession.createConsumer(AMQSession.java:1063)
	at org.wso2.carbon.inbound.endpoint.protocol.jms.factory.JMSConnectionFactory.createMessageConsumer(JMSConnectionFactory.java:368)
	at org.wso2.carbon.inbound.endpoint.protocol.jms.factory.CachedJMSConnectionFactory.createMessageConsumer(CachedJMSConnectionFactory.java:124)
	at org.wso2.carbon.inbound.endpoint.protocol.jms.factory.CachedJMSConnectionFactory.getMessageConsumer(CachedJMSConnectionFactory.java:116)
	at org.wso2.carbon.inbound.endpoint.protocol.jms.JMSPollingConsumer.poll(JMSPollingConsumer.java:172)
	at org.wso2.carbon.inbound.endpoint.protocol.jms.JMSPollingConsumer.execute(JMSPollingConsumer.java:119)
	at org.wso2.carbon.inbound.endpoint.protocol.jms.JMSTask.taskExecute(JMSTask.java:47)
	at org.wso2.carbon.inbound.endpoint.common.InboundTask.execute(InboundTask.java:45)
	at org.wso2.carbon.mediation.ntask.NTaskAdapter.execute(NTaskAdapter.java:98)
	at org.wso2.carbon.ntask.core.impl.TaskQuartzJobAdapter.execute(TaskQuartzJobAdapter.java:67)
	at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)
TID: [-1234] [] [2016-10-07 08:21:27,715] ERROR {org.wso2.carbon.inbound.endpoint.protocol.jms.JMSPollingConsumer} -  Error while receiving JMS message. null {org.wso2.carbon.inbound.endpoint.protocol.jms.JMSPollingConsumer}
java.lang.NullPointerException
	at org.wso2.carbon.inbound.endpoint.protocol.jms.JMSPollingConsumer.receiveMessage(JMSPollingConsumer.java:307)
	at org.wso2.carbon.inbound.endpoint.protocol.jms.JMSPollingConsumer.poll(JMSPollingConsumer.java:173)
	at org.wso2.carbon.inbound.endpoint.protocol.jms.JMSPollingConsumer.execute(JMSPollingConsumer.java:119)
	at org.wso2.carbon.inbound.endpoint.protocol.jms.JMSTask.taskExecute(JMSTask.java:47)
	at org.wso2.carbon.inbound.endpoint.common.InboundTask.execute(InboundTask.java:45)
	at org.wso2.carbon.mediation.ntask.NTaskAdapter.execute(NTaskAdapter.java:98)
	at org.wso2.carbon.ntask.core.impl.TaskQuartzJobAdapter.execute(TaskQuartzJobAdapter.java:67)
	at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)





[ESBJAVA-4918] Created inbound endpoint with client acknowledgement for queue is auto acknowledging Created: 07/Oct/16  Updated: 07/Oct/16

Status: Open
Project: WSO2 ESB
Component/s: Inbound Endpoints
Affects Version/s: 5.0.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Jason De Silva Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

ESB
Standalone ESB 5.0.0
JDK - 1.7.0_79
DB - h2

MB
Set up - 3 node MB cluster with rdbmsBasedCoordination enabled
JDK - IBM-JDK 8
OS - Node 1- RedHat 7.0 , Node 2- RedHat 6.6 , Node 3- RedHat 5.8
DB - MSSQL 2014


Severity: Major
Estimated Complexity: Moderate
Test cases added: No

 Description   

If an inbound endpoint is created for a queue using WSO2 MB type with the transport.jms.SessionAcknowledgement set as CLIENT_ACK. Published messages are consumed no redelivery seems to occur.

Steps

1) Create an inbound endpoint using WSO2 MB type with the transport.jms.SessionAcknowledgement set as CLIENT_ACK. (The sequence consists only a log mediator)
2) Publish one message to the queue

Issue

The published message is consumed.

Expected Result

The message should be redelivered since the acknowledgement is not set explicitly and affect the retry period is over the message should be in DLC






[ESBJAVA-4916] [Inbound endpoint] WSO2 MB - queue inbound endpoint with cache level set to 1 fails to consume messages Created: 06/Oct/16  Updated: 06/Oct/16

Status: Open
Project: WSO2 ESB
Component/s: Inbound Endpoints
Affects Version/s: 5.0.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Jason De Silva Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

ESB
Standalone ESB 5.0.0
JDK - 1.7.0_79
DB - h2

MB
Set up - 3 node MB cluster with rdbmsBasedCoordination enabled
JDK - IBM-JDK 8
OS - Node 1- RedHat 7.0 , Node 2- RedHat 6.6 , Node 3- RedHat 5.8
DB - MSSQL 2014


Attachments: PNG File CacheLevelOne.png    
Severity: Major
Estimated Complexity: Moderate
Test cases added: No

 Description   

Created an inbound endpoint using the WSO2 MB type to subscribe to a queue. The transport.jms.CacheLevel was set to 1.

Issue
Published 100 messages to the queue. But the inbound endpoint fails to consume the messages from the queue.

Refer attachment for inbound endpoint configuration.






[ESBJAVA-4922] Car deployment failure error thrown is not clear when serverRole of security policy is set to GovernanceRegistry Created: 11/Oct/16  Updated: 11/Oct/16

Status: Open
Project: WSO2 ESB
Component/s: Carbon Applications
Affects Version/s: 5.0.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Evanthika Amarasiri Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System : Mac OS X El Capitan 10.11.2 (15C50), x86_64
Java Version/Java VM :1.7.0_79/Java(TM) SE Runtime Environment (build 1.7.0_79-b15)/Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)
Packs : wso2esb-5.0.0
DBMS/DBMS Driver :H2
Setup : Standalone
Dev Studio : 3.8.0


Severity: Critical
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

I have a car which refers a UT policy stored in the registry.
I had the serverRole of the policy set to GovernanceRegistry by mistake (I forgot to change it to EnterpriseServiceBus). So when I deploy this car, I get the following exception.
This error is not descriptive enough and I has to spend some considerable time to figure out what the actual issue is.
So can we make these errors more descriptive?

[2016-10-11 16:54:23,997] ERROR - ProxyServiceDeployer ProxyService Deployment from the file : /Users/evanthika/WSO2/CARBON/ESB/5.0.0/wso2esb-5.0.0/tmp/carbonapps/-1234/1476185063826aaaaa_1.7.5-SNAPSHOT.car/registry_resource_properties_wss_v1_1.0.0/registry_resource_properties_wss_v1-1.0.0.xml : Failed.
org.apache.synapse.SynapseException: Cannot convert null to a StreamSource
	at org.apache.synapse.config.SynapseConfigUtils.handleException(SynapseConfigUtils.java:580)
	at org.apache.synapse.config.SynapseConfigUtils.getStreamSource(SynapseConfigUtils.java:81)
	at org.apache.synapse.core.axis2.ProxyService.getPolicyFromKey(ProxyService.java:831)
	at org.apache.synapse.core.axis2.ProxyService.buildAxisService(ProxyService.java:624)
	at org.apache.synapse.deployers.ProxyServiceDeployer.deploySynapseArtifact(ProxyServiceDeployer.java:81)
	at org.wso2.carbon.proxyadmin.ProxyServiceDeployer.deploySynapseArtifact(ProxyServiceDeployer.java:46)
	at org.apache.synapse.deployers.AbstractSynapseArtifactDeployer.deploy(AbstractSynapseArtifactDeployer.java:194)
	at org.wso2.carbon.application.deployer.synapse.SynapseAppDeployer.deployArtifacts(SynapseAppDeployer.java:131)
	at org.wso2.carbon.application.deployer.internal.ApplicationManager.deployCarbonApp(ApplicationManager.java:263)
	at org.wso2.carbon.application.deployer.CappAxis2Deployer.deploy(CappAxis2Deployer.java:72)
	at org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136)
	at org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:807)
	at org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:144)
	at org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:377)
	at org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:254)
	at org.apache.axis2.deployment.RepositoryListener.startListener(RepositoryListener.java:371)
	at org.apache.axis2.deployment.scheduler.SchedulerTask.checkRepository(SchedulerTask.java:59)
	at org.apache.axis2.deployment.scheduler.SchedulerTask.run(SchedulerTask.java:67)
	at org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.runAxisDeployment(CarbonDeploymentSchedulerTask.java:93)
	at org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.run(CarbonDeploymentSchedulerTask.java:138)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)
[2016-10-11 16:54:23,998] ERROR - AbstractSynapseArtifactDeployer Deployment of the Synapse Artifact from file : /Users/evanthika/WSO2/CARBON/ESB/5.0.0/wso2esb-5.0.0/tmp/carbonapps/-1234/1476185063826aaaaa1.7.5-SNAPSHOT.car/registry_resource_properties_wss_v1_1.0.0/registry_resource_properties_wss_v1-1.0.0.xml : Failed!
org.apache.synapse.deployers.SynapseArtifactDeploymentException: ProxyService Deployment from the file : /Users/evanthika/WSO2/CARBON/ESB/5.0.0/wso2esb-5.0.0/tmp/carbonapps/-1234/1476185063826aaaaa1.7.5-SNAPSHOT.car/registry_resource_properties_wss_v1_1.0.0/registry_resource_properties_wss_v1-1.0.0.xml : Failed.
	at org.apache.synapse.deployers.AbstractSynapseArtifactDeployer.handleSynapseArtifactDeploymentError(AbstractSynapseArtifactDeployer.java:474)
	at org.apache.synapse.deployers.ProxyServiceDeployer.deploySynapseArtifact(ProxyServiceDeployer.java:120)
	at org.wso2.carbon.proxyadmin.ProxyServiceDeployer.deploySynapseArtifact(ProxyServiceDeployer.java:46)
	at org.apache.synapse.deployers.AbstractSynapseArtifactDeployer.deploy(AbstractSynapseArtifactDeployer.java:194)
	at org.wso2.carbon.application.deployer.synapse.SynapseAppDeployer.deployArtifacts(SynapseAppDeployer.java:131)
	at org.wso2.carbon.application.deployer.internal.ApplicationManager.deployCarbonApp(ApplicationManager.java:263)
	at org.wso2.carbon.application.deployer.CappAxis2Deployer.deploy(CappAxis2Deployer.java:72)
	at org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136)
	at org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:807)
	at org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:144)
	at org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:377)
	at org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:254)
	at org.apache.axis2.deployment.RepositoryListener.startListener(RepositoryListener.java:371)
	at org.apache.axis2.deployment.scheduler.SchedulerTask.checkRepository(SchedulerTask.java:59)
	at org.apache.axis2.deployment.scheduler.SchedulerTask.run(SchedulerTask.java:67)
	at org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.runAxisDeployment(CarbonDeploymentSchedulerTask.java:93)
	at org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.run(CarbonDeploymentSchedulerTask.java:138)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.synapse.SynapseException: Cannot convert null to a StreamSource
	at org.apache.synapse.config.SynapseConfigUtils.handleException(SynapseConfigUtils.java:580)
	at org.apache.synapse.config.SynapseConfigUtils.getStreamSource(SynapseConfigUtils.java:81)
	at org.apache.synapse.core.axis2.ProxyService.getPolicyFromKey(ProxyService.java:831)
	at org.apache.synapse.core.axis2.ProxyService.buildAxisService(ProxyService.java:624)
	at org.apache.synapse.deployers.ProxyServiceDeployer.deploySynapseArtifact(ProxyServiceDeployer.java:81)
	... 22 more





[ESBJAVA-4606] JMS Sender level cache is not working properly with the stale connections. Created: 09/May/16  Updated: 27/Jul/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.9.0, 5.0.0-M1
Fix Version/s: None

Type: Bug Priority: High
Reporter: prabath ariyarathna Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

JMS Sender level cache is not working properly with the stale connections.
We need to check this for the session and producer cache levels.
We can reproduce this issue easily with setup JMS broker as the backend and send some requests to fill the JMS connection factory. Then need to restart the JMS broker. You can see the failures in the next subsequent requests.



 Comments   
Comment by Jagath Ariyarathne [ 27/Jul/16 ]

This is fixed for connection caching with following PR. Need to do the same for session and producer caching.

https://github.com/wso2/wso2-axis2-transports/commit/1b738f0e2d2d6dd8d7b48fe326c4d517b6346f1b





[ESBJAVA-2867] Inconsistency in filter mediator Created: 06/Jan/14  Updated: 09/Jul/15

Status: Open
Project: WSO2 ESB
Component/s: Message Stores
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: Chandana Napagoda Assignee: Jagath Ariyarathne
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: XML File config.xml    
Severity: Critical
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Filter mediator shows an inconsistent behavior after messages passed via message store processor. Please refer below synapse config. With out store processor it prints below log[1] and with store processor it prints log[2]

[1]. RESULT = Found a SOAP fault, Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server.generalException</faultcode><faultstring>java.io.IOException Message being parsed: </faultstring></soapenv:Fault></soapenv:Body></soapenv:Envelope>

[2]. RESULT = All is well, Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server.generalException</faultcode><faultstring>java.io.IOException Message being parsed: </faultstring></soapenv:Fault></soapenv:Body></soapenv:Envelope>



 Comments   
Comment by Kasun Indrasiri [ 23/Jan/14 ]

Lowering the priority as this is not a L1.





[ESBJAVA-4874] Unable to recover Local Registry in Script Mediator Created: 30/Aug/16  Updated: 30/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: Registry
Affects Version/s: 4.9.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Joao Melo Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Scenario: carbonContext.getRegistry(RegistryType.LOCAL_REPOSITORY) returns null.

I've a sequence with the following script code:

<sequence name="scenario-sequence" trace="disable" xmlns="http://ws.apache.org/ns/synapse">
<script language="js"><![CDATA[
importPackage(Packages.org.wso2.carbon.context);
importPackage(Packages.org.wso2.carbon.registry.api);

var carbonContext = CarbonContext.getThreadLocalCarbonContext();
var registry = carbonContext.getRegistry(RegistryType.LOCAL_REPOSITORY);

if (registry == null)
mc.getServiceLog().info("+++++ Fail! Unable to recover Local Registry in Script Mediator ");
else
mc.getServiceLog().info("+++++ Success! I love WSO2 ESB! ");
]]></script>
</sequence>

The problem is that depending on "who" is calling the scenario sequence, getRegistry returns a null instance.
Through a service proxy, it's all good:
<proxy name="file-listener-test-proxy"
startOnLoad="true" trace="disable" transports="vfs" xmlns="http://ws.apache.org/ns/synapse">
<target>
<inSequence>
<sequence key="scenario-sequence"/>
</inSequence>
<outSequence/>
<faultSequence/>
</target>
<parameter name="transport.vfs.FileURI">file:///C:/TEMP/WSO2/integrator/in</parameter>
<parameter name="transport.vfs.ContentType">application/xml</parameter>
<parameter name="transport.vfs.FileNamePattern">.*\.xml</parameter>
</proxy>

Through a service proxy, it's not ok:
<messageProcessor
class="org.apache.synapse.message.processor.impl.sampler.SamplingProcessor"
messageStore="request-msg-store"
name="request-msg-processor" xmlns="http://ws.apache.org/ns/synapse">
<parameter name="sequence">scenario-sequence</parameter>
<parameter name="interval">1</parameter>
<parameter name="is.active">true</parameter>
<parameter name="concurrency">1</parameter>
</messageProcessor>



 Comments   
Comment by Joao Melo [ 30/Aug/16 ]

typo at description:
Through a message processor, it's not ok:





[ESBJAVA-4866] WSO2ESB js script mediator error on big payload Created: 23/Aug/16  Updated: 23/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: Mediators
Affects Version/s: 4.9.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: andrey ivanov Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

win


Severity: Major
Estimated Complexity: Moderate

 Description   

have a seq (WSO2ESb 4.9) calls REST and receives JSON. Then I map JSON to XML via script mediator (JS), here is my configuration:

<case regex="urn:mta:navigation:getMarshes">
<property xmlns:ns="http://ws.apache.org/ns/synapse" name="uri.var.service"
value="getMarshes" scope="default" type="STRING" />
<call>
<endpoint key="adapter.navigation.asu.GetData.Endpoint" />
</call>
<script language="js"><![CDATA[
var array = mc.getPayloadJSON();
var payload = <getMarshesRS/>;

for (i = 0; i < array.length; ++i) {
var elem = array[i];
payload.Marshes += <marsh id=

{elem.mr_id}

num=

{elem.mr_num}

title=

{elem.mr_title}

note=

{elem.mr_note}

mt_id=

{elem.mrt_id}

/>
}
mc.setPayloadXML(payload);
]]></script>
</case>
If I receive not much objects from REST service (10 for example), it works fine. But if I receive 1280 objects, I have an exception

[2016-08-23 16:31:35,799] ERROR - Uncaught exception

{org.apache.axis2.transport.base.threads.NativeWorkerPool}

java.lang.ClassFormatError: Invalid method Code length 186472 in class file org/mozilla/javascript/gen/c187 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:763) at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62) at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:126) at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:81) at org.mozilla.javascript.Context.compileImpl(Context.java:2361) at org.mozilla.javascript.Context.compileReader(Context.java:1310) at org.mozilla.javascript.Context.compileReader(Context.java:1282) at org.mozilla.javascript.Context.evaluateReader(Context.java:1224) at com.sun.phobos.script.javascript.RhinoScriptEngine.eval(RhinoScriptEngine.java:172) at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:249) at org.apache.synapse.mediators.bsf.ScriptMediator.processJSONPayload(ScriptMediator.java:322) at org.apache.synapse.mediators.bsf.ScriptMediator.mediateForInlineScript(ScriptMediator.java:294) at org.apache.synapse.mediators.bsf.ScriptMediator.invokeScript(ScriptMediator.java:239) at org.apache.synapse.mediators.bsf.ScriptMediator.mediate(ScriptMediator.java:207) at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:81) at org.apache.synapse.mediators.filters.SwitchMediator.mediate(SwitchMediator.java:178) at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:267) at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.mediateFromContinuationStateStack(Axis2SynapseEnvironment.java:679) at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:244) at org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:529) at org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:172) at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) at org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:247) at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745)






[ESBJAVA-4848] Unable to remotely deploy CApps from Dev Studio due to CSRF Guard Created: 16/Aug/16  Updated: 28/Apr/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 5.0.0-RC3
Fix Version/s: None

Type: Bug Priority: High
Reporter: Joseph Fonseka Assignee: Dulanja Liyanage
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Hi

I created a CApp with a esb config containing a simple proxy server. then I added ESB as a remote server and tried to deploy the CApp using maven deploy plugin.

CApp deployment fails with WSB printing a warning informing about a CSRF attack. IMO This is a generic problem with the OWASP CSRF Guard filter which will prevent any service calls made with 3rd party apps.

Possible suggestions use double submit cookies which will only apply CSRF for browser based requests.

Thanks
Jo

Ps. Following is the warning.
WARN - JavaLogger potential cross-site request forgery (CSRF) attack thwarted (user:<anonymous>, ip:127.0.0.1, method:POST, uri://services/CarbonAppUploader, error:required token is missing from the request)



 Comments   
Comment by Dulanja Liyanage [ 18/Aug/16 ]

Hi Jo,

Could you please check whether following entry is there in Owasp.CsrfGuard.Carbon.properties?

org.owasp.csrfguard.unprotected.Services=%servletContext%/services/*

Thanks,
Dulanja

Comment by Tharindu Edirisinghe [ 08/Feb/17 ]

Adding above won't be enough, because here the request comes as HTTP POST.

With above, it only works for HTTP GET.

So the solution is to add following property as well.

org.owasp.csrfguard.UnprotectedMethods=POST

Comment by Anupama Pathirage [ 08/Feb/17 ]

Small correction for the Tharindu's comment.

The property should be added as follows. Otherwise GET will skipped and only post will be unprotected which will result in Management console UI login is getting denied.

org.owasp.csrfguard.UnprotectedMethods=GET,POST
Comment by Tharindu Edirisinghe [ 28/Apr/17 ]

Anyway, the above config would complete remove CSRF protection from all the POST requests, which is not recommended.

Correct way is only to skip CSRF protection for the particular URL/s as in following config.

org.owasp.csrfguard.unprotected.Services=%servletContext%/xxxxxxxx/*

If above is not working, then we need to check why it is not working.





[ESBJAVA-4844] Kerberos implementaion to secure Rest Proxies Created: 12/Aug/16  Updated: 12/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Priority: High
Reporter: Iranga Muthuthanthri Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Support Kerberos implementation to secure Rest Proxies.






[ESBJAVA-4837] [VFS] NPE when sending message out Created: 10/Aug/16  Updated: 10/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: Transport
Affects Version/s: 5.0.0-RC2
Fix Version/s: None

Type: Bug Priority: High
Reporter: Chaminda Jayawardena Assignee: isuru ranawaka
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Ubuntu 14.04, JDK1.8, mysql5.5.50, OpenSSH ftp server


Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Steps to Recreate:
1. Enable VFdS transport in axis2.xml
2. Add a proxy service[1] in which vfs transport enabled.
3. Keep it running for couple of hours.(this depends; first time, noticed after like 2 hours and next time it was after like 8 hours from the start)
[1]

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
       name="StockQuoteProxy"
       transports="vfs"
       statistics="enable"
       trace="disable"
       startOnLoad="true">
   <target>
      <outSequence>
         <property name="transport.vfs.ReplyFileName"
                   expression="fn:concat(fn:substring-after(get-property('MessageID'), 'urn:uuid:'), '.xml')"
                   scope="transport"/>
         <property name="OUT_ONLY" value="true"/>
         <property name="ClientApiNonBlocking"
                   value="true"
                   scope="axis2"
                   action="remove"/>
         <send>
            <endpoint>
               <address uri="vfs:file:///home/chaminda/Documents/Testing/ESB/5.0.0/vfs/out"/>
            </endpoint>
         </send>
      </outSequence>
      <endpoint>
         <address uri="http://localhost:9000/services/SimpleStockQuoteService"
                  format="soap12"/>
      </endpoint>
   </target>
   <publishWSDL uri="file:repository/samples/resources/proxy/sample_proxy_1.wsdl"/>
   <parameter name="transport.PollInterval">15</parameter>
   <parameter name="transport.vfs.FileSizeLimit">399</parameter>
   <parameter name="transport.vfs.FileURI">sftp://smbuser:*****@10.100.x.xx/home/chaminda/Documents/Testing/ESB/5.0.0/vfs/original</parameter>
   <parameter name="transport.vfs.ContentType">text/xml</parameter>
   <parameter name="transport.vfs.ActionAfterProcess">NONE</parameter>
   <parameter name="transport.vfs.MoveAfterFailure">file:///home/chaminda/Documents/Testing/ESB/5.0.0/vfs/fail</parameter>
   <parameter name="transport.vfs.ActionAfterFailure">MOVE</parameter>
   <parameter name="transport.vfs.ClusterAware">false</parameter>
   <parameter name="transport.vfs.FileNamePattern">.*\.xml</parameter>
   <parameter name="transport.vfs.MoveAfterProcess">file:///home/chaminda/Documents/Testing/ESB/5.0.0/vfs/original</parameter>
   <description/>
</proxy>

[2]

[2016-08-10 05:53:48,876] ERROR - Axis2Sender Unexpected error during sending message out
java.lang.NullPointerException
	at org.apache.synapse.transport.vfs.VFSTransportSender.writeFile(VFSTransportSender.java:335)
	at org.apache.synapse.transport.vfs.VFSTransportSender.sendMessage(VFSTransportSender.java:194)
	at org.apache.axis2.transport.base.AbstractTransportSender.invoke(AbstractTransportSender.java:112)
	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
	at org.apache.axis2.description.OutOnlyAxisOperationClient.executeImpl(OutOnlyAxisOperation.java:297)
	at org.apache.axis2.client.OperationClient.execute(OperationClient.java:149)
	at org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(Axis2FlexibleMEPClient.java:581)
	at org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java:78)
	at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:512)
	at org.apache.synapse.endpoints.AbstractEndpoint.send(AbstractEndpoint.java:382)
	at org.apache.synapse.endpoints.AddressEndpoint.send(AddressEndpoint.java:65)
	at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:121)
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:97)
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:59)
	at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:158)
	at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:337)
	at org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:554)
	at org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:188)
	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
	at org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:261)
	at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)
[2016-08-10 05:53:48,888]  WARN - EndpointContext Endpoint : AnonymousEndpoint with address vfs:file:///home/chaminda/Documents/Testing/ESB/5.0.0/vfs/out will be marked SUSPENDED as it failed
[2016-08-10 05:53:48,889]  WARN - EndpointContext Suspending endpoint : AnonymousEndpoint with address vfs:file:///home/chaminda/Documents/Testing/ESB/5.0.0/vfs/out - current suspend duration is : 30000ms - Next retry after : Wed Aug 10 05:54:18 IST 2016
[2016-08-10 05:53:48,889]  INFO - LogMediator To: http://www.w3.org/2005/08/addressing/anonymous, WSAction: , SOAPAction: , MessageID: urn:uuid:7b4cc39f-1cf4-42f4-9822-a470412a5eb3, Direction: response, MESSAGE = Executing default 'fault' sequence, ERROR_CODE = 0, ERROR_MESSAGE = Unexpected error during sending message out, Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"><soapenv:Body><ns:getQuoteResponse xmlns:ns="http://services.samples"><ns:return xmlns:ax21="http://services.samples/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ax21:GetQuoteResponse"><ax21:change>-2.645794876268378</ax21:change><ax21:earnings>13.257597618613044</ax21:earnings><ax21:high>-96.89377869565995</ax21:high><ax21:last>98.4280480204015</ax21:last><ax21:lastTradeTimestamp>Wed Aug 10 05:53:48 IST 2016</ax21:lastTradeTimestamp><ax21:low>103.17276510667655</ax21:low><ax21:marketCap>-7922672.550319873</ax21:marketCap><ax21:name>IBM Company</ax21:name><ax21:open>102.69918128860253</ax21:open><ax21:peRatio>23.01709919105754</ax21:peRatio><ax21:percentageChange>2.699629403019614</ax21:percentageChange><ax21:prevClose>-98.00585492619761</ax21:prevClose><ax21:symbol>IBM</ax21:symbol><ax21:volume>19456</ax21:volume></ns:return></ns:getQuoteResponse></soapenv:Body></soapenv:Envelope>


 Comments   
Comment by Chaminda Jayawardena [ 10/Aug/16 ]

Also tried with a remote ftp server and it's giving below exception after a moment. In this case endpoint also pointed to a ftp location other than file system.

            <endpoint>
               <address uri="vfs:sftp://ftpuser:ftpuser@192.168.70.xx/home/ubuntu/vfs/out"/>
            </endpoint>
[2016-08-10 12:08:04,767] ERROR - VFSTransportSender Couldn't send the message to file : sftp://ftpuser":***@"192.168.70.135/home/ubuntu/vfs/out/dc1c7739-c119-48a3-9400-d77f65c9c7da.xml, unable to acquire the lock even after 4 retries
[2016-08-10 12:08:04,772] ERROR - Axis2Sender Unexpected error during sending message out
org.apache.axis2.AxisFault: Couldn't send the message to file : sftp://ftpuser":***@"192.168.70.135/home/ubuntu/vfs/out/dc1c7739-c119-48a3-9400-d77f65c9c7da.xml, unable to acquire the lock even after 4 retries
	at org.apache.axis2.transport.base.AbstractTransportSender.handleException(AbstractTransportSender.java:231)
	at org.apache.synapse.transport.vfs.VFSTransportSender.acquireLockForSending(VFSTransportSender.java:418)
	at org.apache.synapse.transport.vfs.VFSTransportSender.writeFile(VFSTransportSender.java:284)
	at org.apache.synapse.transport.vfs.VFSTransportSender.sendMessage(VFSTransportSender.java:194)
	at org.apache.axis2.transport.base.AbstractTransportSender.invoke(AbstractTransportSender.java:112)
	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
	at org.apache.axis2.description.OutOnlyAxisOperationClient.executeImpl(OutOnlyAxisOperation.java:297)
	at org.apache.axis2.client.OperationClient.execute(OperationClient.java:149)
	at org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(Axis2FlexibleMEPClient.java:581)
	at org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java:78)
	at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:512)
	at org.apache.synapse.endpoints.AbstractEndpoint.send(AbstractEndpoint.java:382)
	at org.apache.synapse.endpoints.AddressEndpoint.send(AddressEndpoint.java:65)
	at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:121)
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:97)
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:59)
	at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:158)
	at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:337)
	at org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:554)
	at org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:188)
	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
	at org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:261)
	at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)
[2016-08-10 12:08:04,779]  WARN - EndpointContext Endpoint : AnonymousEndpoint with address vfs:sftp://ftpuser":***@"192.168.70.135/home/ubuntu/vfs/out will be marked SUSPENDED as it failed
[2016-08-10 12:08:04,779]  WARN - EndpointContext Suspending endpoint : AnonymousEndpoint with address vfs:sftp://ftpuser":***@"192.168.70.135/home/ubuntu/vfs/out - last suspend duration was : 30000ms and current suspend duration is : 30000ms - Next retry after : Wed Aug 10 12:08:34 IST 2016
[2016-08-10 12:08:04,780]  INFO - LogMediator To: http://www.w3.org/2005/08/addressing/anonymous, WSAction: , SOAPAction: , MessageID: urn:uuid:dc1c7739-c119-48a3-9400-d77f65c9c7da, Direction: response, MESSAGE = Executing default 'fault' sequence, ERROR_CODE = 0, ERROR_MESSAGE = Unexpected error during sending message out, Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"><soapenv:Body><ns:getQuoteResponse xmlns:ns="http://services.samples"><ns:return xmlns:ax21="http://services.samples/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ax21:GetQuoteResponse"><ax21:change>-2.607164377663238</ax21:change><ax21:earnings>12.205210456190672</ax21:earnings><ax21:high>-80.26120885057587</ax21:high><ax21:last>81.14232231234595</ax21:last><ax21:lastTradeTimestamp>Wed Aug 10 12:06:34 IST 2016</ax21:lastTradeTimestamp><ax21:low>-79.99857130651138</ax21:low><ax21:marketCap>1.363738586590527E7</ax21:marketCap><ax21:name>IBM Company</ax21:name><ax21:open>-80.99985852980087</ax21:open><ax21:peRatio>25.559094022968516</ax21:peRatio><ax21:percentageChange>-2.9201029882484035</ax21:percentageChange><ax21:prevClose>89.28330227240106</ax21:prevClose><ax21:symbol>IBM</ax21:symbol><ax21:volume>5323</ax21:volume></ns:return></ns:getQuoteResponse></soapenv:Body></soapenv:Envelope>
[2016-08-10 12:08:04,817]  INFO - LogMediator To: http://www.w3.org/2005/08/addressing/anonymous, WSAction: , SOAPAction: , MessageID: urn:uuid:61f81e9d-9654-498d-af09-3df3ada63211, Direction: response, MESSAGE = Executing default 'fault' sequence, ERROR_CODE = 303001, ERROR_MESSAGE = Currently , Address endpoint : [ Name : AnonymousEndpoint ] [ State : SUSPENDED ], Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"><soapenv:Body><ns:getQuoteResponse xmlns:ns="http://services.samples"><ns:return xmlns:ax21="http://services.samples/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ax21:GetQuoteResponse"><ax21:change>-2.720141663723826</ax21:change><ax21:earnings>13.787077868995912</ax21:earnings><ax21:high>-95.92642108811141</ax21:high><ax21:last>98.16009247148352</ax21:last><ax21:lastTradeTimestamp>Wed Aug 10 12:08:04 IST 2016</ax21:lastTradeTimestamp><ax21:low>100.95097308171991</ax21:low><ax21:marketCap>5.791502634167565E7</ax21:marketCap><ax21:name>IBM Company</ax21:name><ax21:open>-96.47074302245997</ax21:open><ax21:peRatio>-17.090050740196098</ax21:peRatio><ax21:percentageChange>2.969300959839346</ax21:percentageChange><ax21:prevClose>
Comment by Chanaka Fernando [ 10/Aug/16 ]

The initial NPE is harmless since it occurs after the files are processed and when the TransportSender is trying to close the file system. But the problem with the existing code is that, this NPE is throwing an AxisFault and hence suspending the endpoint. This can cause message losses. To handle this, we have captured the exception and print a warn log to the user. This fix is included in [1].

[1] https://github.com/wso2/wso2-synapse/pull/641

Comment by Chanaka Fernando [ 10/Aug/16 ]

File locking issue is not harmful in terms of message exchange. Can you try with disabling the File locking parameter?

<parameter name="transport.vfs.Locking">disable</parameter>





[ESBJAVA-4843] ESB build the message as text/plain when the jms header content-type in not there in the incoming JMS message Created: 11/Aug/16  Updated: 11/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.9.0
Fix Version/s: None

Type: Task Priority: High
Reporter: Randika Perera Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

ESB build the message as text/plain when the jms header content-type in not there in the incoming JMS message. There is no configuration to select the particular builder at the moment. We encountered this scenario in JMS dual channel when the third party application publish messages to the reply queue without the content type header.






[ESBJAVA-4836] Rampart exception when response from secured backend service returns HTTP 500 Created: 09/Aug/16  Updated: 13/Sep/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.9.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: undefined undefined Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: ESB, rampart
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: XML File FaceDigitalSignature.xml     XML File Face_PS.xml     XML File FacturaSSPP2.xml    
Severity: Blocker
Estimated Complexity: Moderate
Test cases added: No

 Description   

When trying a security scenario (like scenario number 100) in which the backend service is secured by signing the body, but we want the client not to use security, if the backend service returns an HTTP 500 without any soap message, the Rampart produces an exception, that don't returns the process neither to out-sequence nor the fault-sequence, so the client is waiting the response until time-out is produced.

Stack-trace

[2016-08-09 12:00:17,486] ERROR - AxisEngine Missing wsse:Security header in request
org.apache.axis2.AxisFault: Missing wsse:Security header in request
at org.apache.rampart.handler.RampartReceiver.setFaultCodeAndThrowAxisFault(RampartReceiver.java:180)
at org.apache.rampart.handler.RampartReceiver.invoke(RampartReceiver.java:99)
at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:261)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:167)
at org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:247)
at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.rampart.RampartException: Missing wsse:Security header in request
at org.apache.rampart.RampartEngine.process(RampartEngine.java:146)
at org.apache.rampart.handler.RampartReceiver.invoke(RampartReceiver.java:92)
... 9 more
[2016-08-09 12:00:17,488] ERROR - ClientWorker Fault processing response message through Axis2
org.apache.axis2.AxisFault: Missing wsse:Security header in request
at org.apache.rampart.handler.RampartReceiver.setFaultCodeAndThrowAxisFault(RampartReceiver.java:180)
at org.apache.rampart.handler.RampartReceiver.invoke(RampartReceiver.java:99)
at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:261)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:167)
at org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:247)
at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.rampart.RampartException: Missing wsse:Security header in request
at org.apache.rampart.RampartEngine.process(RampartEngine.java:146)
at org.apache.rampart.handler.RampartReceiver.invoke(RampartReceiver.java:92)
... 9 more



 Comments   
Comment by Chanaka Fernando [ 09/Aug/16 ]

Did you define the fault handler in your synapse configuration? If possible, please attach the synapse configuration which you have tried.

Comment by undefined undefined [ 09/Aug/16 ]

Attached proxy-service, endpoint and policy configurations.

I also have a PasswordCallback to get the key password. The message is generated correctoly and send to the backend, but if the backend sends an empty HTTP 500, the exception is produced

Thank you

Comment by undefined undefined [ 12/Aug/16 ]

Debugging the code, I can give more information about the case. The received response from the server has a SoapFault:

<?xml version='1.0' encoding='utf-8'?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Server</faultcode><faultstring>Call to a member function load() on null</faultstring></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>

The policy indicates that a security header is required in the response (at least timestamp), so the RampartEngine.process method produces a RampartExcemption with "missingSecurityHeader".

The problem is that the exception is not propagated to the proxyservice's out-sequence, neither fault-sequence, so it is not possible to notify the client with any message

Comment by undefined undefined [ 13/Sep/16 ]

Debugging the code I saw that Rampart stops processing (with the exception) if the response doesn't satisfy the security policy. I have added a timeout to the endpoint, but i think it could be interesting to return an error to the proxy-service





[ESBJAVA-4834] Error with a large script in script mediator when processing large payloads Created: 08/Aug/16  Updated: 13/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 5.0.0-Beta2
Fix Version/s: None

Type: Bug Priority: High
Reporter: Vinuri Perera Assignee: Nuwan Wimalasekara
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Tested in the 5.0.0 Beta pack


Attachments: XML File SendOutSequence3Changed.xml     XML File sendSequence.xml     XML File testApi.xml    
Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Backend response which has 93509 lines ( 3.3MB ) and with a large script mediator file. Script will go through all the lines in the response and modify the payload(Script mediator contain few parseInt which converts the string values to integer). After modifying it will use the SetPayloadJson[1] to set the payload. when trying to set the payload it give the bellow error[2].

Please note this worked with a small script mediator which only contain one parseInt function but failed for the large script file.

[1]
mc.setPayloadJSON(payLoad.testOutParams);

[2]
==================Error Log =========================
ERROR

{org.apache.synapse.mediators.bsf.ScriptMediator} - The script engine returned an error executing the inlined js script function mediate {org.apache.synapse.mediators.bsf.ScriptMediator}

com.sun.phobos.script.util.ExtendedScriptException: org.mozilla.javascript.WrappedException: Wrapped java.lang.IllegalArgumentException: out of range index (<Unknown Source>#43) in <Unknown Source> at line number 43
at com.sun.phobos.script.javascript.RhinoCompiledScript.eval(RhinoCompiledScript.java:68)
at javax.script.CompiledScript.eval(CompiledScript.java:92)
at org.apache.synapse.mediators.bsf.ScriptMediator.mediateForInlineScript(ScriptMediator.java:333)
at org.apache.synapse.mediators.bsf.ScriptMediator.invokeScript(ScriptMediator.java:265)
at org.apache.synapse.mediators.bsf.ScriptMediator.mediate(ScriptMediator.java:233)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:95)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:57)
at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:158)
at org.apache.synapse.rest.Resource.process(Resource.java:338)
at org.apache.synapse.rest.API.process(API.java:338)
at org.apache.synapse.rest.RESTRequestHandler.apiProcess(RESTRequestHandler.java:125)
at org.apache.synapse.rest.RESTRequestHandler.dispatchToAPI(RESTRequestHandler.java:101)
at org.apache.synapse.rest.RESTRequestHandler.process(RESTRequestHandler.java:56)
at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:300)
at org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:554)
at org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:188)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
at org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:255)
at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.mozilla.javascript.WrappedException: Wrapped java.lang.IllegalArgumentException: out of range index (<Unknown Source>#43)
at org.mozilla.javascript.Context.throwAsScriptRuntimeEx(Context.java:1754)
at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:148)
at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:225)
at org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:32)
at org.mozilla.javascript.gen.Unknown_Source_38._c_script_0(<Unknown Source>:43)
at org.mozilla.javascript.gen.Unknown_Source_38.call(<Unknown Source>)
at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:394)
at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3091)
at org.mozilla.javascript.gen.Unknown_Source_38.call(<Unknown Source>)
at org.mozilla.javascript.gen.Unknown_Source_38.exec(<Unknown Source>)
at com.sun.phobos.script.javascript.RhinoCompiledScript.eval(RhinoCompiledScript.java:55)
... 21 more
Caused by: java.lang.IllegalArgumentException: out of range index
at org.mozilla.classfile.ClassFileWriter.add(ClassFileWriter.java:579)
at org.mozilla.classfile.ClassFileWriter.addLoadConstant(ClassFileWriter.java:647)
at org.mozilla.classfile.ClassFileWriter.addPush(ClassFileWriter.java:884)
at org.mozilla.javascript.optimizer.Codegen.emitConstantDudeInitializers(Codegen.java:1038)
at org.mozilla.javascript.optimizer.Codegen.generateCode(Codegen.java:321)
at org.mozilla.javascript.optimizer.Codegen.compileToClassFile(Codegen.java:166)
at org.mozilla.javascript.optimizer.Codegen.compile(Codegen.java:75)
at org.mozilla.javascript.Context.compileImpl(Context.java:2377)
at org.mozilla.javascript.Context.compileReader(Context.java:1296)
at org.mozilla.javascript.Context.compileReader(Context.java:1268)
at org.mozilla.javascript.Context.evaluateReader(Context.java:1107)
at com.sun.phobos.script.javascript.RhinoScriptEngine.eval(RhinoScriptEngine.java:172)
at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:249)
at org.apache.synapse.mediators.bsf.ScriptMessageContext.setPayloadJSON(ScriptMessageContext.java:724)
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:606)
at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:126)
... 30 more
TID: [-1234] [] [2016-08-04 19:25:36,964] ERROR

{API_LOGGER.testApi} - The script engine returned an error executing the inlined js script function mediate {API_LOGGER.testApi}

com.sun.phobos.script.util.ExtendedScriptException: org.mozilla.javascript.WrappedException: Wrapped java.lang.IllegalArgumentException: out of range index (<Unknown Source>#43) in <Unknown Source> at line number 43
at com.sun.phobos.script.javascript.RhinoCompiledScript.eval(RhinoCompiledScript.java:68)
at javax.script.CompiledScript.eval(CompiledScript.java:92)
at org.apache.synapse.mediators.bsf.ScriptMediator.mediateForInlineScript(ScriptMediator.java:333)
at org.apache.synapse.mediators.bsf.ScriptMediator.invokeScript(ScriptMediator.java:265)
at org.apache.synapse.mediators.bsf.ScriptMediator.mediate(ScriptMediator.java:233)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:95)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:57)
at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:158)
at org.apache.synapse.rest.Resource.process(Resource.java:338)
at org.apache.synapse.rest.API.process(API.java:338)
at org.apache.synapse.rest.RESTRequestHandler.apiProcess(RESTRequestHandler.java:125)
at org.apache.synapse.rest.RESTRequestHandler.dispatchToAPI(RESTRequestHandler.java:101)
at org.apache.synapse.rest.RESTRequestHandler.process(RESTRequestHandler.java:56)
at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:300)
at org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:554)
at org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:188)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
at org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:255)
at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.mozilla.javascript.WrappedException: Wrapped java.lang.IllegalArgumentException: out of range index (<Unknown Source>#43)
at org.mozilla.javascript.Context.throwAsScriptRuntimeEx(Context.java:1754)
at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:148)
at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:225)
at org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:32)
at org.mozilla.javascript.gen.Unknown_Source_38._c_script_0(<Unknown Source>:43)
at org.mozilla.javascript.gen.Unknown_Source_38.call(<Unknown Source>)
at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:394)
at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3091)
at org.mozilla.javascript.gen.Unknown_Source_38.call(<Unknown Source>)
at org.mozilla.javascript.gen.Unknown_Source_38.exec(<Unknown Source>)
at com.sun.phobos.script.javascript.RhinoCompiledScript.eval(RhinoCompiledScript.java:55)
... 21 more
Caused by: java.lang.IllegalArgumentException: out of range index
at org.mozilla.classfile.ClassFileWriter.add(ClassFileWriter.java:579)
at org.mozilla.classfile.ClassFileWriter.addLoadConstant(ClassFileWriter.java:647)
at org.mozilla.classfile.ClassFileWriter.addPush(ClassFileWriter.java:884)
at org.mozilla.javascript.optimizer.Codegen.emitConstantDudeInitializers(Codegen.java:1038)
at org.mozilla.javascript.optimizer.Codegen.generateCode(Codegen.java:321)
at org.mozilla.javascript.optimizer.Codegen.compileToClassFile(Codegen.java:166)
at org.mozilla.javascript.optimizer.Codegen.compile(Codegen.java:75)
at org.mozilla.javascript.Context.compileImpl(Context.java:2377)
at org.mozilla.javascript.Context.compileReader(Context.java:1296)
at org.mozilla.javascript.Context.compileReader(Context.java:1268)
at org.mozilla.javascript.Context.evaluateReader(Context.java:1107)
at com.sun.phobos.script.javascript.RhinoScriptEngine.eval(RhinoScriptEngine.java:172)
at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:249)
at org.apache.synapse.mediators.bsf.ScriptMessageContext.setPayloadJSON(ScriptMessageContext.java:724)
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:606)
at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:126)
... 30 more



 Comments   
Comment by Vinuri Perera [ 08/Aug/16 ]

Added the API Which used for testing and the Payload





[ESBJAVA-4906] Message Processor Unable to process message after restarting ESB Created: 27/Sep/16  Updated: 27/Sep/16

Status: Open
Project: WSO2 ESB
Component/s: Message Processors
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: Sudipta Saha Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: ESB
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

UNIX


Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

If Messages are being queued in Message Stores and the Processor is disables (Use Case - Outage in Downstream) and before activating the Processor the Server crashes for some reason or the ESB is to be restarted for some reason then the Processor picks up the message post restart however the processing is not successful. PFB the generated exception -

TID: [-1] [] [2016-09-27 15:02:06,214] INFO

{org.apache.synapse.core.axis2.TimeoutHandler} - This engine will expire all callbacks after : 120 seconds, irrespective of the timeout action, after the specified or optional timeout {org.apache.synapse.core.axis2.TimeoutHandler}

TID: [-1234] [] [2016-09-27 15:02:06,851] ERROR

{org.apache.synapse.continuation.ContinuationStackManager} - Resource : ba373039034328a55d49f5a1591e8161d0d8fb6b2c08f04d not found {org.apache.synapse.continuation.ContinuationStackManager}

TID: [-1234] [] [2016-09-27 15:02:06,853] ERROR

{org.apache.synapse.core.axis2.SynapseCallbackReceiver} - Synapse encountered an exception, No error handlers found - [Message Dropped]
Resource : ba373039034328a55d49f5a1591e8161d0d8fb6b2c08f04d not found {org.apache.synapse.core.axis2.SynapseCallbackReceiver}




[ESBJAVA-4897] VFS InboundEndpoint onError/Exception Created: 15/Sep/16  Updated: 15/Sep/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.9.0, 5.0.0
Fix Version/s: None

Type: Improvement Priority: High
Reporter: Malaka Silva Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Hi,
We are using an inbound endpoint to pull from a sftp location.
We have set the attributes 'sequence' and 'onError' to point at different sequences.
We have specified the Content-Type as application/xml.
When something is successfully pulled from the file location, we expect the `sequence` sequence to be used, when a failure occurs, we expect the `onError` sequence to be used.
When adding xml to the sftp, the inbound endpoint passes the payload to `sequence` but if we add something else (eg. json or malformed xml) to the location, we see an exception thrown on the ESB but the `onError` sequence is not used. This also results in us losing the message entirely.
Could you tell my why the onError sequence isn't used when this failure occurs and so that we can capture and deal with this kind of fault.
I have attached the inbound-endpoint and the exception from esb.

Thanks,
Malaka






[ESBJAVA-4889] Issue In Sending Message through HAPi Test Panel Created: 09/Sep/16  Updated: 09/Sep/16

Status: Open
Project: WSO2 ESB
Component/s: Mediators
Affects Version/s: 5.0.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Amutheezan Sivagnanam Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: ESB
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux


Severity: Major
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Test cases added: Yes

 Description   

When I tried to send Messages using HAPi Test Panel, It shows following error
[2016-09-09 09:22:46,573] ERROR - ApplicationRouterImpl Attempting to send error message to remote system.
ca.uhn.hl7v2.HL7Exception: java.lang.NoClassDefFoundError: org/wso2/carbon/bam/data/publisher/util/PublisherUtil
at ca.uhn.hl7v2.protocol.impl.ApplicationRouterImpl.processMessage(ApplicationRouterImpl.java:157)
at ca.uhn.hl7v2.protocol.impl.ApplicationRouterImpl.processMessage(ApplicationRouterImpl.java:79)
at ca.uhn.hl7v2.app.Responder.processMessage(Responder.java:90)
at ca.uhn.hl7v2.app.Receiver$Grunt.run(Receiver.java:121)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NoClassDefFoundError: org/wso2/carbon/bam/data/publisher/util/PublisherUtil
at org.wso2.carbon.business.messaging.hl7.common.data.conf.HL7MessagePublisherConfig.createMessage(HL7MessagePublisherConfig.java:55)
at org.wso2.carbon.business.messaging.hl7.common.HL7ProcessingContext.publishMessage(HL7ProcessingContext.java:315)
at org.wso2.carbon.business.messaging.hl7.common.HL7ProcessingContext.initMessageContext(HL7ProcessingContext.java:302)
at org.wso2.carbon.business.messaging.hl7.transport.utils.HL7MessageProcessor.processMessage(HL7MessageProcessor.java:96)
at ca.uhn.hl7v2.protocol.impl.AppWrapper.processMessage(AppWrapper.java:40)
at ca.uhn.hl7v2.protocol.impl.ApplicationRouterImpl.processMessage(ApplicationRouterImpl.java:146)
... 8 more
Caused by: java.lang.ClassNotFoundException: org.wso2.carbon.bam.data.publisher.util.PublisherUtil cannot be found by org.wso2.carbon.business.messaging.hl7.common_4.6.6
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 14 more

[2016-09-09 09:25:30,237] ERROR - ApplicationRouterImpl Attempting to send error message to remote system.
ca.uhn.hl7v2.HL7Exception: java.lang.NoClassDefFoundError: org/wso2/carbon/bam/data/publisher/util/PublisherUtil
at ca.uhn.hl7v2.protocol.impl.ApplicationRouterImpl.processMessage(ApplicationRouterImpl.java:157)
at ca.uhn.hl7v2.protocol.impl.ApplicationRouterImpl.processMessage(ApplicationRouterImpl.java:79)
at ca.uhn.hl7v2.app.Responder.processMessage(Responder.java:90)
at ca.uhn.hl7v2.app.Receiver$Grunt.run(Receiver.java:121)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NoClassDefFoundError: org/wso2/carbon/bam/data/publisher/util/PublisherUtil
at org.wso2.carbon.business.messaging.hl7.common.data.conf.HL7MessagePublisherConfig.createMessage(HL7MessagePublisherConfig.java:55)
at org.wso2.carbon.business.messaging.hl7.common.HL7ProcessingContext.publishMessage(HL7ProcessingContext.java:315)
at org.wso2.carbon.business.messaging.hl7.common.HL7ProcessingContext.initMessageContext(HL7ProcessingContext.java:302)
at org.wso2.carbon.business.messaging.hl7.transport.utils.HL7MessageProcessor.processMessage(HL7MessageProcessor.java:96)
at ca.uhn.hl7v2.protocol.impl.AppWrapper.processMessage(AppWrapper.java:40)
at ca.uhn.hl7v2.protocol.impl.ApplicationRouterImpl.processMessage(ApplicationRouterImpl.java:146)
... 8 more



 Comments   
Comment by Amutheezan Sivagnanam [ 09/Sep/16 ]

It worked sucessfully when,
1. Clone the repository https://github.com/wso2/carbon-mediation/tree/v4.6.6
2. Go to <dir>/component/business-adaptors/hl7/org.wso2.carbon.business.messaging.hl7.common/main/java/org/wso2/carbon/business/messaging/hl7/common/data/conf/ and edit HL7MessagePublisherConfig.java file, by replacing bam by das
that is include import org.wso2.carbon.das.data.publisher.util.PublisherUtil; instead of import org.wso2.carbon.bam.data.publisher.util.PublisherUtil;
then edit the pom.xml related to <dir>/component/business-adaptors/hl7/org.wso2.carbon.business.messaging.hl7.common/
by adding dependency for das
<dependency>
<groupId>org.wso2.carbon.mediation</groupId>
<artifactId>org.wso2.carbon.das.data.publisher.util</artifactId>
</dependency>
instead of
<dependency>
<groupId>org.wso2.carbon</groupId>
<artifactId>org.wso2.carbon.bam.data.publisher.util</artifactId>
</dependency>
3. Then build the total project and get the required jar file for the patch, and added patch to your downloaded ESB directory and restart the ESB Server.





[ESBJAVA-4881] Error trying to consume message from message store Created: 01/Sep/16  Updated: 01/Sep/16

Status: Open
Project: WSO2 ESB
Component/s: Message Processors, Message Stores
Affects Version/s: 5.0.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Joao Melo Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: ESB, MB
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

I'm using WSO2 ESB 5.0 with MB as a feature, on the same instance.

I'm getting an error StorableMessage cannot be found:

[2016-09-01 14:35:38,739] ERROR - SourceHandler I/O error: Foi forçado o cancelamento de uma conexão existente pelo host remoto
java.io.IOException: Foi forçado o cancelamento de uma conexão existente pelo host remoto
at sun.nio.ch.SocketDispatcher.read0(Native Method)
at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:43)
at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:225)
at sun.nio.ch.IOUtil.read(IOUtil.java:198)
at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:359)
at org.apache.http.impl.nio.reactor.SessionInputBufferImpl.fill(SessionInputBufferImpl.java:164)
at org.apache.http.impl.nio.codecs.AbstractMessageParser.fillBuffer(AbstractMessageParser.java:136)
at org.apache.synapse.transport.http.conn.LoggingNHttpServerConnection$LoggingNHttpMessageParser.fillBuffer(LoggingNHttpServerConnection.java:379)
at org.apache.http.impl.nio.DefaultNHttpServerConnection.consumeInput(DefaultNHttpServerConnection.java:261)
at org.apache.synapse.transport.http.conn.LoggingNHttpServerConnection.consumeInput(LoggingNHttpServerConnection.java:112)
at org.apache.synapse.transport.passthru.ServerIODispatch.onInputReady(ServerIODispatch.java:82)
at org.apache.synapse.transport.passthru.ServerIODispatch.onInputReady(ServerIODispatch.java:39)
at org.apache.http.impl.nio.reactor.AbstractIODispatch.inputReady(AbstractIODispatch.java:113)
at org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:159)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:338)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:316)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:277)
at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:105)
at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:586)
at java.lang.Thread.run(Thread.java:722)
[2016-09-01 14:35:41,794] ERROR - JmsConsumer [msg-store-C-1] cannot receive message from store. Error:Could not deserialize message: java.lang.ClassNotFoundException: org.apache.synapse.message.store.impl.commons.StorableMessage cannot be found by andes_3.1.1
[2016-09-01 14:35:41,796] INFO - ChannelCloseHandler Received channel close for id 1 citing class 0 and method 0

Probably It's missing some .jar on lib, or it has wrong version, but I have no idea which is.






[ESBJAVA-4271] [MB] ESB becomes inaccessible when a user tries to subscribe to a queue without permission Created: 16/Oct/15  Updated: 30/May/16

Status: Open
Project: WSO2 ESB
Component/s: Proxy Services Management
Affects Version/s: 4.9.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Dilini Gunatilake Assignee: Dilini Gunatilake
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

OS: Ubuntu 14.04
JDK: 1.7.0_79
Database : H2
Browser : Firefox 40.0
Setup : Standalone


Severity: Major
Estimated Complexity: Moderate
Test cases added: No

 Description   

Steps to reproduce
--------------------------------------------------------------------------------------------------------
1. Login as the admin user (admin/admin)
2. Create a queue - test
3. Create another user in MB with only login, queue and topic permissions.
4. Create a JMS Proxy to consume messages from test queue by the user created at step 3

Issue
--------------------------------------------------------------------------------------------------------
Exception is logged continuously as follows mentioning permission is denied. Also, Management console will not be accessible and need to restart ESB to work again.

[2015-10-16 11:10:18,256]  INFO - ProxyService Successfully created the Axis2 service for Proxy service : SimpleStockTopicSub2
[2015-10-16 11:10:20,772]  WARN - ServiceTaskManager Unable to shutdown all polling tasks of service : SimpleStockTopicSub2
[2015-10-16 11:10:20,773]  INFO - ServiceTaskManager Task manager for service : SimpleStockTopicSub2 shutdown
[2015-10-16 11:10:20,773]  INFO - ServiceTaskManager Task manager for service : SimpleStockTopicSub2 [re-]initialized
[2015-10-16 11:10:21,212]  INFO - ConnectionCloseMethodHandler ConnectionClose frame received
[2015-10-16 11:10:21,214]  INFO - ConnectionCloseMethodHandler Error :403: access refused:Thread-32
[2015-10-16 11:10:21,214] ERROR - AMQStateManager No Waiters for error saving as last error:org.wso2.andes.AMQSecurityException: Permission denied: binding SimpleStockTopicSub2 [error code 403: access refused]
[2015-10-16 11:10:21,215] ERROR - ServiceTaskManager Error creating JMS consumer for service : SimpleStockTopicSub2. Error registering consumer: org.wso2.andes.AMQSecurityException: org.wso2.andes.AMQSecurityException: Permission denied: binding SimpleStockTopicSub2 [error code 403: access refused] [error code 403: access refused]
[2015-10-16 11:10:21,215] ERROR - ServiceTaskManager Error reciving the message.
[2015-10-16 11:10:21,215] ERROR - ServiceTaskManager JMS Connection failed : 403 - shutting down worker tasks
[2015-10-16 11:10:21,217]  INFO - ServiceTaskManager Reconnection attempt : 1 for service : SimpleStockTopicSub2
[2015-10-16 11:10:25,775] ERROR - ServiceTaskManager Reconnection attempt : 1 for service : SimpleStockTopicSub2 failed. Next retry in 20 seconds
[2015-10-16 11:10:26,218]  WARN - ServiceTaskManager Unable to shutdown all polling tasks of service : SimpleStockTopicSub2
[2015-10-16 11:10:26,218]  INFO - ServiceTaskManager Task manager for service : SimpleStockTopicSub2 shutdown
[2015-10-16 11:10:26,219]  INFO - ServiceTaskManager Task manager for service : SimpleStockTopicSub2 [re-]initialized
[2015-10-16 11:10:26,571]  INFO - ConnectionCloseMethodHandler ConnectionClose frame received
[2015-10-16 11:10:26,572]  INFO - ConnectionCloseMethodHandler Error :403: access refused:Thread-36
[2015-10-16 11:10:26,572] ERROR - AMQStateManager No Waiters for error saving as last error:org.wso2.andes.AMQSecurityException: Permission denied: binding SimpleStockTopicSub2 [error code 403: access refused]
[2015-10-16 11:10:26,573] ERROR - ServiceTaskManager Error creating JMS consumer for service : SimpleStockTopicSub2. Error registering consumer: org.wso2.andes.AMQSecurityException: org.wso2.andes.AMQSecurityException: Permission denied: binding SimpleStockTopicSub2 [error code 403: access refused] [error code 403: access refused]
[2015-10-16 11:10:26,574] ERROR - ServiceTaskManager Error reciving the message.
[2015-10-16 11:10:26,573] ERROR - ServiceTaskManager JMS Connection failed : 403 - shutting down worker tasks
[2015-10-16 11:10:26,575]  INFO - ServiceTaskManager Reconnection attempt : 1 for service : SimpleStockTopicSub2
[2015-10-16 11:10:31,220] ERROR - ServiceTaskManager Reconnection attempt : 1 for service : SimpleStockTopicSub2 failed. Next retry in 20 seconds
[2015-10-16 11:10:31,576]  WARN - ServiceTaskManager Unable to shutdown all polling tasks of service : SimpleStockTopicSub2
[2015-10-16 11:10:31,577]  INFO - ServiceTaskManager Task manager for service : SimpleStockTopicSub2 shutdown
[2015-10-16 11:10:31,577]  INFO - ServiceTaskManager Task manager for service : SimpleStockTopicSub2 [re-]initialized
[2015-10-16 11:10:31,821]  INFO - ConnectionCloseMethodHandler ConnectionClose frame received
[2015-10-16 11:10:31,822]  INFO - ConnectionCloseMethodHandler Error :403: access refused:Thread-40
[2015-10-16 11:10:31,823] ERROR - AMQStateManager No Waiters for error saving as last error:org.wso2.andes.AMQSecurityException: Permission denied: binding SimpleStockTopicSub2 [error code 403: access refused]
[2015-10-16 11:10:31,824] ERROR - ServiceTaskManager Error creating JMS consumer for service : SimpleStockTopicSub2. Error registering consumer: org.wso2.andes.AMQSecurityException: org.wso2.andes.AMQSecurityException: Permission denied: binding SimpleStockTopicSub2 [error code 403: access refused] [error code 403: access refused]
[2015-10-16 11:10:31,824] ERROR - ServiceTaskManager Error reciving the message.
[2015-10-16 11:10:31,824] ERROR - ServiceTaskManager JMS Connection failed : 403 - shutting down worker tasks
[2015-10-16 11:10:31,825]  INFO - ServiceTaskManager Reconnection attempt : 1 for service : SimpleStockTopicSub2
[2015-10-16 11:10:36,579] ERROR - ServiceTaskManager Reconnection attempt : 1 for service : SimpleStockTopicSub2 failed. Next retry in 20 seconds
[2015-10-16 11:10:36,827]  WARN - ServiceTaskManager Unable to shutdown all polling tasks of service : SimpleStockTopicSub2
[2015-10-16 11:10:36,827]  INFO - ServiceTaskManager Task manager for service : SimpleStockTopicSub2 shutdown
[2015-10-16 11:10:36,828]  INFO - ServiceTaskManager Task manager for service : SimpleStockTopicSub2 [re-]initialized
[2015-10-16 11:10:37,116]  INFO - ConnectionCloseMethodHandler ConnectionClose frame received
[2015-10-16 11:10:37,117]  INFO - ConnectionCloseMethodHandler Error :403: access refused:Thread-37
[2015-10-16 11:10:37,118] ERROR - AMQStateManager No Waiters for error saving as last error:org.wso2.andes.AMQSecurityException: Permission denied: binding SimpleStockTopicSub2 [error code 403: access refused]
[2015-10-16 11:10:37,118] ERROR - ServiceTaskManager Error creating JMS consumer for service : SimpleStockTopicSub2. Error registering consumer: org.wso2.andes.AMQSecurityException: org.wso2.andes.AMQSecurityException: Permission denied: binding SimpleStockTopicSub2 [error code 403: access refused] [error code 403: access refused]

[2015-10-16 11:11:18,960] ERROR - ServiceTaskManager Error reciving the message.
[2015-10-16 11:11:18,959] ERROR - ServiceTaskManager JMS Connection failed : 403 - shutting down worker tasks
[2015-10-16 11:11:18,961]  INFO - ServiceTaskManager Reconnection attempt : 1 for service : SimpleStockTopicSub2
[2015-10-16 11:11:23,676] ERROR - ServiceTaskManager Reconnection attempt : 2 for service : SimpleStockTopicSub2 failed. Next retry in 40 seconds
[2015-10-16 11:11:23,962]  WARN - ServiceTaskManager Unable to shutdown all polling tasks of service : SimpleStockTopicSub2
[2015-10-16 11:11:23,963]  INFO - ServiceTaskManager Task manager for service : SimpleStockTopicSub2 shutdown
[2015-10-16 11:11:23,963]  INFO - ServiceTaskManager Task manager for service : SimpleStockTopicSub2 [re-]initialized
[2015-10-16 11:11:24,405]  INFO - ConnectionCloseMethodHandler ConnectionClose frame received
[2015-10-16 11:11:24,406]  INFO - ConnectionCloseMethodHandler Error :403: access refused:Thread-33
[2015-10-16 11:11:24,406] ERROR - AMQStateManager No Waiters for error saving as last error:org.wso2.andes.AMQSecurityException: Permission denied: binding SimpleStockTopicSub2 [error code 403: access refused]
[2015-10-16 11:11:24,407] ERROR - ServiceTaskManager Error creating JMS consumer for service : SimpleStockTopicSub2. Error registering consumer: org.wso2.andes.AMQSecurityException: org.wso2.andes.AMQSecurityException: Permission denied: binding SimpleStockTopicSub2 [error code 403: access refused] [error code 403: access refused]
[2015-10-16 11:11:24,407] ERROR - ServiceTaskManager JMS Connection failed : 403 - shutting down worker tasks
[2015-10-16 11:11:24,408] ERROR - ServiceTaskManager Error reciving the message.
[2015-10-16 11:11:24,408]  INFO - ServiceTaskManager Reconnection attempt : 1 for service : SimpleStockTopicSub2
[2015-10-16 11:11:28,965] ERROR - ServiceTaskManager Reconnection attempt : 1 for service : SimpleStockTopicSub2 failed. Next retry in 20 seconds
[2015-10-16 11:11:29,410]  WARN - ServiceTaskManager Unable to shutdown all polling tasks of service : SimpleStockTopicSub2
[2015-10-16 11:11:29,411]  INFO - ServiceTaskManager Task manager for service : SimpleStockTopicSub2 shutdown
[2015-10-16 11:11:29,411]  INFO - ServiceTaskManager Task manager for service : SimpleStockTopicSub2 [re-]initialized
[2015-10-16 11:11:34,412] ERROR - ServiceTaskManager Reconnection attempt : 1 for service : SimpleStockTopicSub2 failed. Next retry in 20 seconds
[2015-10-16 11:11:37,623]  INFO - ServiceTaskManager Reconnection attempt : 3 for service : SimpleStockTopicSub2
[2015-10-16 11:11:42,764]  INFO - ServiceTaskManager Reconnection attempt : 3 for service : SimpleStockTopicSub2
[2015-10-16 11:11:48,053]  INFO - ServiceTaskManager Reconnection attempt : 3 for service : SimpleStockTopicSub2
[2015-10-16 11:11:48,966]  INFO - ServiceTaskManager Reconnection attempt : 2 for service : SimpleStockTopicSub2
[2015-10-16 11:11:53,324]  INFO - ServiceTaskManager Reconnection attempt : 3 for service : SimpleStockTopicSub2
[2015-10-16 11:11:54,413]  INFO - ServiceTaskManager Reconnection attempt : 2 for service : SimpleStockTopicSub2
[2015-10-16 11:11:58,611]  INFO - ServiceTaskManager Reconnection attempt : 3 for service : SimpleStockTopicSub2
[2015-10-16 11:11:58,840]  INFO - DeploymentInterceptor Removing Axis2 Service: SimpleStockTopicSub2 {super-tenant}
[2015-10-16 11:11:59,422]  INFO - AMQConnection Unable to connect to broker at tcp://192.168.48.140:5672?connectdelay='10'&retries='5'
org.wso2.andes.AMQTimeoutException: Server did not respond in a timely fashion [error code 408: Request Timeout]
	at org.wso2.andes.client.util.BlockingWaiter.block(BlockingWaiter.java:176)
	at org.wso2.andes.client.state.StateWaiter.await(StateWaiter.java:112)
	at org.wso2.andes.client.state.StateWaiter.await(StateWaiter.java:89)
	at org.wso2.andes.client.AMQConnectionDelegate_8_0.makeBrokerConnection(AMQConnectionDelegate_8_0.java:126)
	at org.wso2.andes.client.AMQConnection.makeBrokerConnection(AMQConnection.java:615)
	at org.wso2.andes.client.AMQConnection.<init>(AMQConnection.java:397)
	at org.wso2.andes.client.AMQConnectionFactory.createConnection(AMQConnectionFactory.java:327)
	at org.wso2.andes.client.AMQConnectionFactory.createConnection(AMQConnectionFactory.java:38)
	at org.apache.axis2.transport.jms.JMSUtils.createConnection(JMSUtils.java:690)
	at org.apache.axis2.transport.jms.ServiceTaskManager$MessageListenerTask.createConnection(ServiceTaskManager.java:868)
	at org.apache.axis2.transport.jms.ServiceTaskManager$MessageListenerTask.getConnection(ServiceTaskManager.java:750)
	at org.apache.axis2.transport.jms.ServiceTaskManager$MessageListenerTask.receiveMessage(ServiceTaskManager.java:533)
	at org.apache.axis2.transport.jms.ServiceTaskManager$MessageListenerTask.run(ServiceTaskManager.java:447)
	at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)
[2015-10-16 11:11:59,425]  INFO - FailoverRoundRobinServers ==== Checking failoverAllowed() ====
[2015-10-16 11:11:59,425]  INFO - FailoverRoundRobinServers Cycle Servers:
Cycle Retries:2
Current Cycle:0
Server Retries:0
Current Retry:0
Current Broker:0
>tcp://192.168.48.140:5672?connectdelay='10'&retries='5'
tcp://192.168.48.142:5672?connectdelay='10'&retries='5'

[2015-10-16 11:11:59,425]  INFO - FailoverRoundRobinServers ====================================
[2015-10-16 11:11:59,426]  INFO - FailoverRoundRobinServers Delay between connect retries:10
[2015-10-16 11:12:03,677]  INFO - ServiceTaskManager Reconnection attempt : 3 for service : SimpleStockTopicSub2

[2015-10-16 11:12:29,448]  INFO - AMQConnection Unable to connect to broker at tcp://192.168.48.142:5672?connectdelay='10'&retries='5'
org.wso2.andes.AMQTimeoutException: Server did not respond in a timely fashion [error code 408: Request Timeout]
	at org.wso2.andes.client.util.BlockingWaiter.block(BlockingWaiter.java:176)
	at org.wso2.andes.client.state.StateWaiter.await(StateWaiter.java:112)
	at org.wso2.andes.client.state.StateWaiter.await(StateWaiter.java:89)
	at org.wso2.andes.client.AMQConnectionDelegate_8_0.makeBrokerConnection(AMQConnectionDelegate_8_0.java:126)
	at org.wso2.andes.client.AMQConnection.makeBrokerConnection(AMQConnection.java:615)
	at org.wso2.andes.client.AMQConnection.<init>(AMQConnection.java:397)
	at org.wso2.andes.client.AMQConnectionFactory.createConnection(AMQConnectionFactory.java:327)
	at org.wso2.andes.client.AMQConnectionFactory.createConnection(AMQConnectionFactory.java:38)
	at org.apache.axis2.transport.jms.JMSUtils.createConnection(JMSUtils.java:690)
	at org.apache.axis2.transport.jms.ServiceTaskManager$MessageListenerTask.createConnection(ServiceTaskManager.java:868)
	at org.apache.axis2.transport.jms.ServiceTaskManager$MessageListenerTask.getConnection(ServiceTaskManager.java:750)
	at org.apache.axis2.transport.jms.ServiceTaskManager$MessageListenerTask.receiveMessage(ServiceTaskManager.java:533)
	at org.apache.axis2.transport.jms.ServiceTaskManager$MessageListenerTask.run(ServiceTaskManager.java:447)
	at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)
[2015-10-16 11:12:29,451]  INFO - FailoverRoundRobinServers ==== Checking failoverAllowed() ====
[2015-10-16 11:12:29,451]  INFO - FailoverRoundRobinServers Cycle Servers:
Cycle Retries:2
Current Cycle:0
Server Retries:5
Current Retry:0
Current Broker:1
tcp://192.168.48.140:5672?connectdelay='10'&retries='5'
>tcp://192.168.48.142:5672?connectdelay='10'&retries='5'

[2015-10-16 11:12:29,452]  INFO - FailoverRoundRobinServers ====================================
[2015-10-16 11:12:29,452]  INFO - FailoverRoundRobinServers Trying tcp://192.168.48.142:5672?connectdelay='10'&retries='5'
[2015-10-16 11:12:29,452]  INFO - FailoverRoundRobinServers Delay between connect retries:10
[2015-10-16 11:12:59,475]  INFO - AMQConnection Unable to connect to broker at tcp://192.168.48.142:5672?connectdelay='10'&retries='5'
org.wso2.andes.AMQTimeoutException: Server did not respond in a timely fashion [error code 408: Request Timeout]
	at org.wso2.andes.client.util.BlockingWaiter.block(BlockingWaiter.java:176)
	at org.wso2.andes.client.state.StateWaiter.await(StateWaiter.java:112)
	at org.wso2.andes.client.state.StateWaiter.await(StateWaiter.java:89)
	at org.wso2.andes.client.AMQConnectionDelegate_8_0.makeBrokerConnection(AMQConnectionDelegate_8_0.java:126)
	at org.wso2.andes.client.AMQConnection.makeBrokerConnection(AMQConnection.java:615)
	at org.wso2.andes.client.AMQConnection.<init>(AMQConnection.java:397)
	at org.wso2.andes.client.AMQConnectionFactory.createConnection(AMQConnectionFactory.java:327)
	at org.wso2.andes.client.AMQConnectionFactory.createConnection(AMQConnectionFactory.java:38)
	at org.apache.axis2.transport.jms.JMSUtils.createConnection(JMSUtils.java:690)
	at org.apache.axis2.transport.jms.ServiceTaskManager$MessageListenerTask.createConnection(ServiceTaskManager.java:868)
	at org.apache.axis2.transport.jms.ServiceTaskManager$MessageListenerTask.getConnection(ServiceTaskManager.java:750)
	at org.apache.axis2.transport.jms.ServiceTaskManager$MessageListenerTask.receiveMessage(ServiceTaskManager.java:533)
	at org.apache.axis2.transport.jms.ServiceTaskManager$MessageListenerTask.run(ServiceTaskManager.java:447)
	at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)
[2015-10-16 11:12:59,478]  INFO - FailoverRoundRobinServers ==== Checking failoverAllowed() ====
[2015-10-16 11:12:59,479]  INFO - FailoverRoundRobinServers Cycle Servers:
Cycle Retries:2
Current Cycle:0
Server Retries:5
Current Retry:1
Current Broker:1
tcp://192.168.48.140:5672?connectdelay='10'&retries='5'
>tcp://192.168.48.142:5672?connectdelay='10'&retries='5'

[2015-10-16 11:12:59,480]  INFO - FailoverRoundRobinServers ====================================
[2015-10-16 11:12:59,480]  INFO - FailoverRoundRobinServers Trying tcp://192.168.48.142:5672?connectdelay='10'&retries='5'
[2015-10-16 11:12:59,481]  INFO - FailoverRoundRobinServers Delay between connect retries:10


 Comments   
Comment by Ravindra Ranwala [ 30/May/16 ]

The given information is not cleat for us to reproduce the issue. Please clearly state the necessary steps to reproduce the issue. If you are sharing the user store etc please state those specific information that will facilitate us to replicate the issue here.





[ESBJAVA-4234] The Throttle Mediator doesn't work correctly when using Respond Mediator without sending message out to an endpoint Created: 24/Sep/15  Updated: 06/Aug/16

Status: Postponed
Project: WSO2 ESB
Component/s: Mediators
Affects Version/s: 4.9.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: shmily wen Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: ESB
Remaining Estimate: 8 hours
Time Spent: Not Specified
Original Estimate: 8 hours
Environment:

windows7 64bit, Developer Studio 3.7.1, JDK 8


Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

The Throttle Mediator doesn't treats the Respond Mediator as a response, so that the count for concurrent access number is not increase after Respond Mediator send message back to client. When digging into the code, I found ThrottleMediator.java has decrease the rest count for concurrent access number in line 129,
if (concurrentAccessController != null)

{ canAccess = doThrottleByConcurrency(isResponse, synLog); }

and only when SynapseCallbackReceiver.java line 501 is called,
int available = concurrentAccessController.incrementAndGet();
the number will be added back.

But when I use Respond Mediator, it doesn't involve SynapseCallbackReceiver since it doesn't send request to real service, so it doesn't add the number back. After a few invocation, all my request will fail.



 Comments   
Comment by Chanaka Fernando [ 06/Aug/16 ]

This needs a major revamp in the throttle mediator. Hence postponing for future release.





[ESBJAVA-4353] Script mediator cannot handle messages bigger than 64kb Created: 07/Dec/15  Updated: 11/May/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.9.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Jayanga Dissanayake Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Script mediator cannot handle messages bigger than 64kb.
The Rhino engine converts the script to a method inside a Java class. Java has a limitation "code_lenght must be less than 65536" [1].

Because of the above mentioned reasons, Script mediator fails with [2].

[1] https://docs.oracle.com/javase/specs/jvms/se7/html/jvms-4.html#jvms-4.9.1

[2]
TID: [-1234] [] [2015-11-24 12:28:28,936] ERROR

{org.apache.axis2.transport.base.threads.NativeWorkerPool} - Uncaught exception {org.apache.axis2.transport.base.threads.NativeWorkerPool}

java.lang.ClassFormatError: Invalid method Code length 76520 in class file org/mozilla/javascript/gen/c40445
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
at org.mozilla.javascript.DefiningClassLoader.defineClass(DefiningClassLoader.java:62)
at org.mozilla.javascript.optimizer.Codegen.defineClass(Codegen.java:126)
at org.mozilla.javascript.optimizer.Codegen.createScriptObject(Codegen.java:81)
at org.mozilla.javascript.Context.compileImpl(Context.java:2361)
at org.mozilla.javascript.Context.compileReader(Context.java:1310)
at org.mozilla.javascript.Context.compileReader(Context.java:1282)
at org.mozilla.javascript.Context.evaluateReader(Context.java:1224)
at com.sun.phobos.script.javascript.RhinoScriptEngine.eval(RhinoScriptEngine.java:172)



 Comments   
Comment by Ushani Balasooriya [ 11/May/17 ]

Increasing the priority since its occurrence is high.





[ESBJAVA-4199] zookeeper.session.timeout.ms and zookeeper.connection.timeout.ms parameters in kafka inbound endpoint are not working properly Created: 08/Sep/15  Updated: 06/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: Inbound Endpoints
Affects Version/s: 4.9.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Nayomi Dayarathne Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Pack : wso2esb-4.9.0-RC4
Java version : Oracle jdk 1.7.0
DB Version : embedded H2
OS : Ubuntu 14.04 LTS


Severity: Major
Estimated Complexity: Moderate
Test cases added: No

 Description   

Create a kafka inbound endpoint and give values for zookeeper.session.timeout.ms and zookeeper.connection.timeout.ms parameters.

Timeouts are not performing within the given time durations.






[ESBJAVA-4125] Creating a secondary ldap user store in read only mode fails to authenticate users Created: 27/Aug/15  Updated: 09/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.9.0 - Beta
Fix Version/s: None

Type: Bug Priority: High
Reporter: Jason De Silva Assignee: Jason De Silva
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Pack : wso2esb-4.9.0-RC1.zip
ldap : default wso2is-5.0.0 with sp
OS: Ubuntu 14.04
JDK: 1.7.0_79
Browser : Google Chrome Version 43.0.2357.65 (64-bit)
Setup: Standalone


Attachments: XML File recreate.xml    
Severity: Major
Estimated Complexity: Moderate
Test cases added: No

 Description   

Steps
1. Started WSO2 IS500 with SP with port off set to use as the ldap user store
2. Created secondary read only ldap user store in esb by filling mandatory fields pointing to IS ldap
3. The secondary user store was created successfully and the ldap users were shown.
4. Login to ESB with the a secondary user store user after applying login and home page permission for the internal/everyone user role

Issue - invalid user name / password popup is shown

Enabled debug log and found the below exception

javax.naming.directory.InvalidSearchFilterException: Unbalanced parenthesis; remaining name 'ou=Users,dc=WSO2,dc=ORG'
	at com.sun.jndi.ldap.Filter.findRightParen(Filter.java:694)
	at com.sun.jndi.ldap.Filter.encodeFilterList(Filter.java:733)
	at com.sun.jndi.ldap.Filter.encodeComplexFilter(Filter.java:657)
	at com.sun.jndi.ldap.Filter.encodeFilter(Filter.java:104)
	at com.sun.jndi.ldap.Filter.encodeFilterString(Filter.java:74)
	at com.sun.jndi.ldap.LdapClient.search(LdapClient.java:547)
	at com.sun.jndi.ldap.LdapCtx.doSearch(LdapCtx.java:1985)
	at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1847)
	at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1772)
	at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:386)
	at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:356)
	at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:339)
	at javax.naming.directory.InitialDirContext.search(InitialDirContext.java:267)
	at org.wso2.carbon.user.core.ldap.ReadOnlyLDAPUserStoreManager.getNameInSpaceForUserName(ReadOnlyLDAPUserStoreManager.java:2047)
	at org.wso2.carbon.user.core.ldap.ReadOnlyLDAPUserStoreManager.getNameInSpaceForUserName(ReadOnlyLDAPUserStoreManager.java:2015)
	at org.wso2.carbon.user.core.ldap.ReadOnlyLDAPUserStoreManager.doAuthenticate(ReadOnlyLDAPUserStoreManager.java:409)
	at org.wso2.carbon.user.core.common.AbstractUserStoreManager.authenticate(AbstractUserStoreManager.java:419)
	at org.wso2.carbon.user.core.common.AbstractUserStoreManager.authenticate(AbstractUserStoreManager.java:375)
	at org.wso2.carbon.user.core.common.AbstractUserStoreManager.authenticate(AbstractUserStoreManager.java:358)
	at org.wso2.carbon.core.services.authentication.AuthenticationAdmin.login(AuthenticationAdmin.java:100)
	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:606)
	at org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:212)
	at org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:117)
	at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
	at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:110)
	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
	at org.apache.axis2.transport.local.LocalTransportReceiver.processMessage(LocalTransportReceiver.java:169)
	at org.apache.axis2.transport.local.LocalTransportReceiver.processMessage(LocalTransportReceiver.java:82)
	at org.wso2.carbon.core.transports.local.CarbonLocalTransportSender.finalizeSendWithToAddress(CarbonLocalTransportSender.java:45)
	at org.apache.axis2.transport.local.LocalTransportSender.invoke(LocalTransportSender.java:77)
	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
	at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:430)
	at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:225)
	at org.apache.axis2.client.OperationClient.execute(OperationClient.java:149)
	at org.wso2.carbon.authenticator.stub.AuthenticationAdminStub.login(AuthenticationAdminStub.java:659)
	at org.wso2.carbon.authenticator.proxy.AuthenticationAdminClient.login(AuthenticationAdminClient.java:64)
	at org.wso2.carbon.ui.DefaultCarbonAuthenticator.doAuthentication(DefaultCarbonAuthenticator.java:119)
	at org.wso2.carbon.ui.AbstractCarbonUIAuthenticator.handleSecurity(AbstractCarbonUIAuthenticator.java:218)
	at org.wso2.carbon.ui.BasicAuthUIAuthenticator.authenticate(BasicAuthUIAuthenticator.java:83)
	at org.wso2.carbon.ui.CarbonUILoginUtil.handleLogin(CarbonUILoginUtil.java:377)
	at org.wso2.carbon.ui.CarbonSecuredHttpContext.handleSecurity(CarbonSecuredHttpContext.java:244)
	at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:60)
	at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:128)
	at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:68)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
	at org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.service(DelegationServlet.java:68)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.wso2.carbon.tomcat.ext.filter.CharacterSetFilter.doFilter(CharacterSetFilter.java:61)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	at org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:99)
	at org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:49)
	at org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:62)
	at org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:159)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
	at org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:57)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1739)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1698)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:745)
TID: [-1234] [] [2015-08-27 14:56:20,018] DEBUG {org.wso2.carbon.user.core.common.AbstractUserStoreManager} -  Authentication failure. Wrong username or password is provided. {org.wso2.carbon.user.core.common.AbstractUserStoreManager}



 Comments   
Comment by Jason De Silva [ 27/Aug/15 ]

Uploaded the config file(recreate.xml) created for the secondary user store and observed that below elements have an "amp" removing that and restated the server led ldap users also to successfully login

<Property name="UserNameSearchFilter">(&amp;amp;(objectClass=person)(uid=?))</Property>
<Property name="GroupNameSearchFilter">(&amp;amp;(objectClass=groupOfNames)(cn=?))</Property>
Comment by Chanaka Fernando [ 09/Aug/16 ]

Can you check with ESB 5.0.0 RC2 pack and let us know the result?





[ESBJAVA-4283] wso2esb is unable to create xa datasource for postgressql Created: 22/Jan/14  Updated: 24/May/16

Status: In Progress
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: faisal shaik Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: ESB
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

ubuntu,wso2esb4.8.0


Attachments: XML File master-datasources.xml    
Severity: Critical
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Test cases added: Yes
Affects Docs:
Yes

 Description   

Hi
I am working with wso2esb 4.8.0 and postgressql9.1
I wish to do a simple transaction based insert in wso2esb .If we want to do a transaction need to use xa data source but wso2esb and dss default using non xa data source.So i created a xa data source but its showing errors even i tried wso2dss box carring but no result we are unable maintain a same JSESSONID in to proxy so now i am trying with DBLOOKUP and DB REPORT for that i am trying create xa datasource using below
configuration in repository/config/master-datasource.xmll
<datasource>
<name>DS2</name>
<jndiConfig>
<name>DS2</name>
</jndiConfig>
<definition type="RDBMS">
<configuration>
<dataSourceClassName>com.atomikos.jdbc.AtomikosDataSourceBean</dataSourceClassName>
<dataSourceProps>
<property name="xaDataSourceClassName">org.postgresql.xa.PGXADataSource</property>
<property name="uniqueResourceName">TXUSCProduction</property>
<property name="xaProperties.user">youtilitydba</property>
<property name="xaProperties.password">Youtility11</property>
<property name="xaProperties.URL">jdbc:postgresql://localhost:5432/USCProduction</property>
<property name="poolSize">10</property>
</dataSourceProps>
</configuration>
</definition>
</datasource>
its creating and showing in UI also when i am trying with DBREPORT giving pool errors are AtomikosDataSourceBean errors
really fed up with wso2 no proper docs are no proper example even no reply for any question



 Comments   
Comment by faisal shaik [ 20/Feb/14 ]

is it bug in wso2.

Comment by dushan abeyruwan [ 27/Jun/14 ]

This should be a bug related to carbon components.





[ESBJAVA-4954] API calls are not reflecting in system statistics Created: 15/Nov/16  Updated: 27/Jun/17

Status: Open
Project: WSO2 ESB
Component/s: Stratos ESB
Affects Version/s: 4.9.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Muralidharan Balanandan Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Critical
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Test cases added: Yes

 Description   

In monitor -> system statistics, the API calls are not reflected in the number of request / response served and thereby in the service response times.
Need your help on this. Whether this is not supported or some configuration to be enabled.



 Comments   
Comment by Chanika Geeganage [ 27/Jun/17 ]

System statistics displays statistics on data collected from sequences, endpoints and proxy services. In order to get API statistics, In EI (or ESB from 5.0.0 onwards), we can use EI Analytics. For that the analytics profile can to be used and statistics should be enabled for the APIs.
ESB analytics was introduced from ESB 5.0.0 and have to download ESB analytics server. From EI 6.0.0 onwards the analytics profile is shipped with the product it self. More info can be found from [1] [2]

[1] https://docs.wso2.com/display/EI611/Prerequisites+to+Publish+Statistics
[2] https://docs.wso2.com/display/EI611/Analyzing+WSO2+EI+via+the+Analytics+Dashboard





[ESBJAVA-4987] HTTP request with a query string parameter is routed to an incorrect API resource Created: 02/Jan/17  Updated: 27/Jun/17

Status: In Progress
Project: WSO2 ESB
Component/s: None
Affects Version/s: 5.0.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Jarkko Kallio Assignee: Chanika Geeganage
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Alpinelinux
jdk-8u102


Attachments: XML File test-api.xml    
Severity: Major
Estimated Complexity: Unknown
Test cases added: Yes

 Description   

GIVEN attached API configuration
WHEN curl -X GET "http://localhost:8280/test-api/test?param=fuu"
THEN resource with /test?param=

{param}

should run

Instead the request is routed to the resource WITHOUT the query string parameter.



 Comments   
Comment by Chanika Geeganage [ 27/Jun/17 ]

According to the current code implementation,

1. At the deployment type all the resources are kept in a LinkedHashMap in the order of they are appeared in the API
2. At the request time, it first check whether each resource in the map are in the state of 'can process' (the protocol of the incoming request and the resource's protocol are same, the methods are same.. etc). As both the resources are in that condition, it passes.
3. Then out of all 'can process' resources, it first get the resource which matches based on the URLMappingBasedDispatcher, next URITemplateBasedDispatcher and finally DefaultDispatcher. As both the resources are under URITemplateBasedDispatcher, there is no difference on that.
4. Therefore, the first resource which matches all those conditions will be executed.





[ESBJAVA-5182] [CG] Info messages can be seen when starting the server Created: 28/Nov/12  Updated: 11/Jul/17

Status: Open
Project: WSO2 ESB
Component/s: Cloud Gateway
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: Aparna Karunarathna Assignee: Rajika Kumarasiri
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Browser: Firefox
Env: Dev setup


Severity: Major
Estimated Complexity: Moderate
Test cases added: No

 Description   

Following info messages cab seen when starting the server and continuously displayed in the backend.

steps to reproduce
Unpublished all services from ESB
then restart the CG server

*************************************
TID: [0] [CG] [2012-11-28 14:47:25,092] INFO

{org.apache.synapse.mediators.builtin.LogMediator} - To: local://axis2services/SimpleStockQuoteService.SimpleStockQuoteServiceHttpSoap11Endpoint, WSAction: urn:getQuote, SOAPAction: urn:getQuote, MessageID: urn:uuid:EA559E736AA18E3D3A1354094245112, Direction: request {org.apache.synapse.mediators.builtin.LogMediator}

TID: [0] [CG] [2012-11-28 14:47:25,092] INFO

{org.apache.synapse.mediators.builtin.LogMediator} - To: local://axis2services/SimpleStockQuoteService.SimpleStockQuoteServiceHttpSoap11Endpoint, WSAction: urn:getQuote, SOAPAction: urn:getQuote, MessageID: urn:uuid:EA559E736AA18E3D3A1354094245112, Direction: request {org.apache.synapse.mediators.builtin.LogMediator}

TID: [0] [CG] [2012-11-28 14:47:25,093] INFO

{SERVICE_LOGGER.__SynapseService} - To: local://axis2services/SimpleStockQuoteService.SimpleStockQuoteServiceHttpSoap11Endpoint, WSAction: urn:getQuote, SOAPAction: urn:getQuote, MessageID: urn:uuid:EA559E736AA18E3D3A1354094245112, Direction: request {SERVICE_LOGGER.__SynapseService}




[ESBJAVA-5147] NPE thrown when CGServer is restarted when proxy service is publihsed to CG Created: 30/Jan/14  Updated: 11/Jul/17

Status: Open
Project: WSO2 ESB
Component/s: Cloud Gateway
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: Shashika Ubhayaratne Assignee: Kasun Indrasiri
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

ESB 4.8.1 stand alone pack + CG Agent 1.0.0


Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

1. Create a proxy service
2. Add CGSever (There should be running CG Server)
3. Publish the created proxy service
4. Restart CGAgent

Issue:
[2014-01-30 12:21:09,375] INFO - CarbonUIServiceComponent Mgt Console URL : https://10.100.0.33:9443/carbon/

[2014-01-30 12:28:04,845] INFO - CarbonAuthenticationUtil 'admin@carbon.super [-1234]' logged in at [2014-01-30 12:28:04,845+0530]
[2014-01-30 12:28:39,513] INFO - ProxyService Building Axis service for Proxy service : proxy1
[2014-01-30 12:28:39,515] INFO - ProxyService Adding service proxy1 to the Axis2 configuration
[2014-01-30 12:28:39,520] INFO - DeploymentInterceptor Deploying Axis2 service: proxy1

{super-tenant}

[2014-01-30 12:28:39,562] INFO - ProxyService Successfully created the Axis2 service for Proxy service : proxy1
[2014-01-30 12:28:54,877] INFO - TimeoutHandler This engine will expire all callbacks after : 120 seconds, irrespective of the timeout action, after the specified or optional timeout
[2014-01-30 12:29:23,460] INFO - TCPTransportSender TCP Sender started
[2014-01-30 12:29:35,783] INFO - TCPTransportSender TCP Sender started
[2014-01-30 12:29:35,813] INFO - TCPTransportSender TCP Sender started
[2014-01-30 12:29:35,880] INFO - CGPollingTransportSender CGPOLLING Sender started
[2014-01-30 12:29:35,885] INFO - CGPollingTransportReceiver CGThrift transport receiver started
[2014-01-30 12:29:35,885] INFO - CGPollingTransportReceiver CGPOLLING listener started
[2014-01-30 12:29:35,891] INFO - CGPollingTransportReceiver CGThrift polling task started for service 'proxy1'
[2014-01-30 12:29:37,668] INFO - TCPTransportSender TCP Sender started
[2014-01-30 12:29:37,695] INFO - TCPTransportSender TCP Sender started
[2014-01-30 12:29:39,107] INFO - TCPTransportSender TCP Sender started
[2014-01-30 12:29:39,138] INFO - TCPTransportSender TCP Sender started
[2014-01-30 12:30:22,806] ERROR - CGPollingTransportTaskManager Polling Task Manager encountered an error..
org.apache.thrift.transport.TTransportException: java.net.SocketException: Connection reset
at org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:129)
at org.apache.thrift.transport.TTransport.readAll(TTransport.java:84)
at org.apache.thrift.protocol.TBinaryProtocol.readAll(TBinaryProtocol.java:378)
at org.apache.thrift.protocol.TBinaryProtocol.readI32(TBinaryProtocol.java:297)
at org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:204)
at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:69)
at org.wso2.carbon.cloud.gateway.common.thrift.gen.CloudGatewayService$Client.recv_exchange(CloudGatewayService.java:114)
at org.wso2.carbon.cloud.gateway.common.thrift.gen.CloudGatewayService$Client.exchange(CloudGatewayService.java:99)
at org.wso2.carbon.cloud.gateway.common.thrift.CGThriftClient.exchange(CGThriftClient.java:63)
at org.wso2.carbon.cloud.gateway.agent.transport.CGPollingTransportTaskManager$MessageExchangeTask.run(CGPollingTransportTaskManager.java:309)
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)
Caused by: java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:168)
at com.sun.net.ssl.internal.ssl.InputRecord.readFully(InputRecord.java:293)
at com.sun.net.ssl.internal.ssl.InputRecord.read(InputRecord.java:331)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:798)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:755)
at com.sun.net.ssl.internal.ssl.AppInputStream.read(AppInputStream.java:75)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:258)
at java.io.BufferedInputStream.read(BufferedInputStream.java:317)
at org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:127)
... 13 more
[2014-01-30 12:30:22,812] INFO - CGAgentHeartBeatTask A heart beat task for the remote server '10.100.0.33:15001' has been added
[2014-01-30 12:30:22,812] INFO - CGAgentHeartBeatTask Remote server '10.100.0.33:15001' is not alive. Next re-attempt is after '20' seconds
[2014-01-30 12:30:42,813] INFO - CGAgentHeartBeatTask Hear beat task detected remote server '10.100.0.33:15001', is alive. Observers will be notified
[2014-01-30 12:30:42,813] ERROR - CGAgentAdminService Could not retrieve the service publish flag for service 'proxy1'
java.lang.NullPointerException
at org.wso2.carbon.cloud.gateway.agent.service.CGAgentAdminService.getServiceStatus(CGAgentAdminService.java:357)
at org.wso2.carbon.cloud.gateway.agent.observer.CGAgentObserverImpl.update(CGAgentObserverImpl.java:48)
at org.wso2.carbon.cloud.gateway.agent.observer.CGAgentSubjectImpl.notifyObservers(CGAgentSubjectImpl.java:45)
at org.wso2.carbon.cloud.gateway.agent.observer.CGAgentSubjectImpl.connected(CGAgentSubjectImpl.java:38)
at org.wso2.carbon.cloud.gateway.agent.heartbeat.CGAgentHeartBeatTask.run(CGAgentHeartBeatTask.java:60)
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)
[2014-01-30 12:30:42,814] ERROR - CGAgentObserverImpl Error while re-publishing the service 'proxy1' via received publish notification. You may need to re-publish the service manually!






[ESBJAVA-4355] Required Transaction support for the RabbitMQ transport Created: 08/Dec/15  Updated: 11/Jul/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Priority: High
Reporter: Krishan Malan Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: ESB, RabbitMQ, Transaction
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

In JMS, it is possible to do transactions with the following parameters, but in Rabbitmq transport couldn't find anything similar to this.
<parameter name="transport.jms.SessionTransacted">true</parameter>
<parameter name="transport.jms.SessionAcknowledgement" locked="true">CLIENT_ACKNOWLEDGE</parameter>

Also couldn't find any OOTB solution to do transaction sessions.

Please consider this in future development.



 Comments   
Comment by Senduran Balasubramaniyam [ 11/Jul/17 ]

Possible related issue: https://wso2.org/jira/browse/ESBJAVA-5059





[ESBJAVA-5173] [CG]Error occurred when publishing the service Created: 28/Nov/12  Updated: 11/Jul/17

Status: Open
Project: WSO2 ESB
Component/s: Cloud Gateway
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: Aparna Karunarathna Assignee: Rajika Kumarasiri
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Browser:
Env: Dev setup


Attachments: JPEG File CG_Publishing_issue.jpg    
Severity: Critical
Estimated Complexity: Moderate
Test cases added: No

 Description   

Following error occurred when publishing the service and now ESB server is not allowing to publish any services.

steps to reproduce
login to Appserver & deploy a simplestockquoteservice to appserver
then logout from AppServer
login to ESB and create proxy service for simplestockquoteservice
add CG server details to ESB (Home> Configure > Cloud Gateway Agent> Add/Edit Server )
go to Home > Configure > Cloud Gateway Agent > Publish/Unpublish Service
select the manual option and publish the service to CG server

Note: Screenshot is attached for your reference.

************************************************
TID: [0] [ESB] [2012-11-28 15:19:17,893] ERROR

{org.wso2.carbon.cloud.gateway.agent.service.CGAgentAdminService} - Error while retrieving the meta data of the service 'SimpleStockQuoteService' {org.wso2.carbon.cloud.gateway.agent.service.CGAgentAdminService}

org.wso2.carbon.cloud.gateway.common.CGException: Invalid instance type detected when parsing the WSDL 'http://esb.stratosdev.private.wso2.com:8280/services/t/ank.com/SimpleStockQuoteService?wsdl'. Required OMElement type!
at org.wso2.carbon.cloud.gateway.agent.CGAgentUtils.getWSDLElement(CGAgentUtils.java:287)
at org.wso2.carbon.cloud.gateway.agent.CGAgentWsdlDependencyResolver.parseWsdlDependencies(CGAgentWsdlDependencyResolver.java:110)
at org.wso2.carbon.cloud.gateway.agent.service.CGAgentAdminService.getCGServiceMetaData(CGAgentAdminService.java:732)
at org.wso2.carbon.cloud.gateway.agent.service.CGAgentAdminService.publishService(CGAgentAdminService.java:99)
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.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:212)
at org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver.invokeBusinessLogic(RPCInOnlyMessageReceiver.java:66)
at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:110)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
at org.apache.axis2.transport.local.LocalTransportReceiver.processMessage(LocalTransportReceiver.java:169)
at org.apache.axis2.transport.local.LocalTransportReceiver.processMessage(LocalTransportReceiver.java:82)
at org.wso2.carbon.core.transports.local.CarbonLocalTransportSender.finalizeSendWithToAddress(CarbonLocalTransportSender.java:45)
at org.apache.axis2.transport.local.LocalTransportSender.invoke(LocalTransportSender.java:77)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:398)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:224)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:149)
at org.wso2.carbon.cloud.gateway.agent.stub.CGAgentAdminServiceStub.publishService(CGAgentAdminServiceStub.java:393)
at org.wso2.carbon.cloud.gateway.agent.ui.CGAgentAdminClient.publish(CGAgentAdminClient.java:73)
at org.apache.jsp.cg.publish_002dservice_005fajaxprocessor_jsp._jspService(publish_002dservice_005fajaxprocessor_jsp.java:100)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.wso2.carbon.ui.JspServlet.service(JspServlet.java:161)
at org.wso2.carbon.ui.TilesJspServlet.service(TilesJspServlet.java:80)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.eclipse.equinox.http.helper.ContextPathServletAdaptor.service(ContextPathServletAdaptor.java:36)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:67)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.service(DelegationServlet.java:68)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:690)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:477)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:402)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:329)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.forward(RequestDispatcherAdaptor.java:30)
at org.wso2.carbon.redirector.servlet.ui.filters.AllPagesFilter.doFilter(AllPagesFilter.java:156)
at org.eclipse.equinox.http.helper.FilterServletAdaptor.service(FilterServletAdaptor.java:37)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:67)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.service(DelegationServlet.java:68)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.wso2.carbon.tomcat.ext.filter.CharacterSetFilter.doFilter(CharacterSetFilter.java:61)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:172)
at org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:156)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
at org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:52)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1001)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1653)
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)
TID: [0] [ESB] [2012-11-28 15:19:17,898] ERROR

{org.wso2.carbon.cloud.gateway.agent.service.CGAgentAdminService} - Could not publish service 'SimpleStockQuoteService'. Error while retrieving the meta data of the service 'SimpleStockQuoteService' {org.wso2.carbon.cloud.gateway.agent.service.CGAgentAdminService}

org.wso2.carbon.cloud.gateway.common.CGException: Error while retrieving the meta data of the service 'SimpleStockQuoteService'
at org.wso2.carbon.cloud.gateway.agent.service.CGAgentAdminService.handleException(CGAgentAdminService.java:598)
at org.wso2.carbon.cloud.gateway.agent.service.CGAgentAdminService.getCGServiceMetaData(CGAgentAdminService.java:756)
at org.wso2.carbon.cloud.gateway.agent.service.CGAgentAdminService.publishService(CGAgentAdminService.java:99)
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.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:212)
at org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver.invokeBusinessLogic(RPCInOnlyMessageReceiver.java:66)
at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:110)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
at org.apache.axis2.transport.local.LocalTransportReceiver.processMessage(LocalTransportReceiver.java:169)
at org.apache.axis2.transport.local.LocalTransportReceiver.processMessage(LocalTransportReceiver.java:82)
at org.wso2.carbon.core.transports.local.CarbonLocalTransportSender.finalizeSendWithToAddress(CarbonLocalTransportSender.java:45)
at org.apache.axis2.transport.local.LocalTransportSender.invoke(LocalTransportSender.java:77)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:398)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:224)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:149)
at org.wso2.carbon.cloud.gateway.agent.stub.CGAgentAdminServiceStub.publishService(CGAgentAdminServiceStub.java:393)
at org.wso2.carbon.cloud.gateway.agent.ui.CGAgentAdminClient.publish(CGAgentAdminClient.java:73)
at org.apache.jsp.cg.publish_002dservice_005fajaxprocessor_jsp._jspService(publish_002dservice_005fajaxprocessor_jsp.java:100)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.wso2.carbon.ui.JspServlet.service(JspServlet.java:161)
at org.wso2.carbon.ui.TilesJspServlet.service(TilesJspServlet.java:80)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.eclipse.equinox.http.helper.ContextPathServletAdaptor.service(ContextPathServletAdaptor.java:36)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:67)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.service(DelegationServlet.java:68)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:690)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:477)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:402)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:329)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.forward(RequestDispatcherAdaptor.java:30)
at org.wso2.carbon.redirector.servlet.ui.filters.AllPagesFilter.doFilter(AllPagesFilter.java:156)
at org.eclipse.equinox.http.helper.FilterServletAdaptor.service(FilterServletAdaptor.java:37)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:67)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.service(DelegationServlet.java:68)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.wso2.carbon.tomcat.ext.filter.CharacterSetFilter.doFilter(CharacterSetFilter.java:61)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:172)
at org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:156)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
at org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:52)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1001)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1653)
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)
Caused by: org.wso2.carbon.cloud.gateway.common.CGException: Invalid instance type detected when parsing the WSDL 'http://esb.stratosdev.private.wso2.com:8280/services/t/ank.com/SimpleStockQuoteService?wsdl'. Required OMElement type!
at org.wso2.carbon.cloud.gateway.agent.CGAgentUtils.getWSDLElement(CGAgentUtils.java:287)
at org.wso2.carbon.cloud.gateway.agent.CGAgentWsdlDependencyResolver.parseWsdlDependencies(CGAgentWsdlDependencyResolver.java:110)
at org.wso2.carbon.cloud.gateway.agent.service.CGAgentAdminService.getCGServiceMetaData(CGAgentAdminService.java:732)
... 71 more






[ESBJAVA-5175] Cannot access the secured service from CG Created: 21/Sep/12  Updated: 11/Jul/17

Status: Open
Project: WSO2 ESB
Component/s: Cloud Gateway
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: Aparna Karunarathna Assignee: Rajika Kumarasiri
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Server: wso2cg-1.0.0(https://svn.wso2.org/repos/wso2/people/rajika/cg/release/19-10-2012)
OS: Win 7
Java: 1.6.29


Attachments: Zip Archive SecurityClient.zip    
Severity: Critical
Estimated Complexity: Moderate
Test cases added: No

 Description   

cannot access the secured service from CG and following error message was displayed when access via Tryit tool

Steps to reproduce
Start CG & Appserver
Login to AppServer and do the basic CG configuration and publish a service
login to CG server and secure the service using Username token
then access via tryit tool by giving the usename/Password
observe the backend error

[2012-09-21 12:40:35,343] ERROR - Axis2Sender Unexpected error during sending message out
org.apache.axis2.AxisFault: No user value in the rampart configuration policy
at org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:117)
at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:262)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:427)
at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.send(DynamicAxisOperation.java:193)
at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.executeImpl(DynamicAxisOperation.java:175)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165)
at org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(Axis2FlexibleMEPClient.java:445)
at org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java:57)
at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:281)
at org.apache.synapse.endpoints.AbstractEndpoint.send(AbstractEndpoint.java:297)
at org.apache.synapse.endpoints.AddressEndpoint.send(AddressEndpoint.java:59)
at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:175)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:181)
at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:172)
at org.apache.synapse.transport.nhttp.ServerWorker.processEntityEnclosingMethod(ServerWorker.java:409)
at org.apache.synapse.transport.nhttp.ServerWorker.run(ServerWorker.java:261)
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)
Caused by: org.apache.rampart.RampartException: No user value in the rampart configuration policy
at org.apache.rampart.builder.BindingBuilder.addUsernameToken(BindingBuilder.java:210)
at org.apache.rampart.builder.TransportBindingBuilder.build(TransportBindingBuilder.java:95)
at org.apache.rampart.MessageBuilder.build(MessageBuilder.java:140)
at org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:106)
... 21 more



 Comments   
Comment by Aparna Karunarathna [ 21/Sep/12 ]

Following error were thrown when access the secured services from client

[2012-09-21 19:04:46,384] ERROR - AxisEngine Missing wsse:Security header in request
org.apache.axis2.AxisFault: Missing wsse:Security header in request
at org.apache.rampart.handler.RampartReceiver.setFaultCodeAndThrowAxisFault(RampartReceiver.java:198)
at org.apache.rampart.handler.RampartReceiver.invoke(RampartReceiver.java:111)
at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:262)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:168)
at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:172)
at org.apache.synapse.transport.nhttp.ServerWorker.processEntityEnclosingMethod(ServerWorker.java:409)
at org.apache.synapse.transport.nhttp.ServerWorker.run(ServerWorker.java:261)
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)
Caused by: org.apache.rampart.RampartException: Missing wsse:Security header in request
at org.apache.rampart.RampartEngine.process(RampartEngine.java:141)
at org.apache.rampart.handler.RampartReceiver.invoke(RampartReceiver.java:104)
... 11 more
[2012-09-21 19:04:46,390] ERROR - ServerWorker Error processing POST request
org.apache.axis2.AxisFault: Missing wsse:Security header in request
at org.apache.rampart.handler.RampartReceiver.setFaultCodeAndThrowAxisFault(RampartReceiver.java:198)
at org.apache.rampart.handler.RampartReceiver.invoke(RampartReceiver.java:111)
at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:262)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:168)
at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:172)
at org.apache.synapse.transport.nhttp.ServerWorker.processEntityEnclosingMethod(ServerWorker.java:409)
at org.apache.synapse.transport.nhttp.ServerWorker.run(ServerWorker.java:261)
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)
Caused by: org.apache.rampart.RampartException: Missing wsse:Security header in request
at org.apache.rampart.RampartEngine.process(RampartEngine.java:141)
at org.apache.rampart.handler.RampartReceiver.invoke(RampartReceiver.java:104)
... 11 more
[2012-09-21 19:04:46,795] ERROR - HttpCoreNIOSender General Error sending response message to : 10.100.3.176
java.lang.NullPointerException
at org.wso2.carbon.relay.ExpandingMessageFormatter.writeTo(ExpandingMessageFormatter.java:92)
at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:540)
at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:315)
at org.apache.axis2.engine.AxisEngine.sendFault(AxisEngine.java:526)
at org.apache.synapse.transport.nhttp.ServerWorker.handleException(ServerWorker.java:488)
at org.apache.synapse.transport.nhttp.ServerWorker.processEntityEnclosingMethod(ServerWorker.java:418)
at org.apache.synapse.transport.nhttp.ServerWorker.run(ServerWorker.java:261)
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)
[2012-09-21 19:04:46,798] ERROR - ServerHandler Unexpected HTTP protocol error : Transfer-encoding header already present
org.apache.http.ProtocolException: Transfer-encoding header already present
at org.apache.http.protocol.ResponseContent.process(ResponseContent.java:63)
at org.apache.http.protocol.BasicHttpProcessor.process(BasicHttpProcessor.java:211)
at org.apache.synapse.transport.nhttp.ServerHandler.commitResponseHideExceptions(ServerHandler.java:367)
at org.apache.synapse.transport.nhttp.ServerWorker.handleException(ServerWorker.java:494)
at org.apache.synapse.transport.nhttp.ServerWorker.processEntityEnclosingMethod(ServerWorker.java:418)
at org.apache.synapse.transport.nhttp.ServerWorker.run(ServerWorker.java:261)
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)
[2012-09-21 19:04:46,801] ERROR - NativeWorkerPool Uncaught exception
java.lang.IllegalStateException: Buffer already closed for writing
at org.apache.http.nio.util.SharedOutputBuffer.write(SharedOutputBuffer.java:181)
at org.apache.http.nio.entity.ContentOutputStream.write(ContentOutputStream.java:71)
at org.apache.synapse.transport.nhttp.ServerWorker.handleException(ServerWorker.java:511)
at org.apache.synapse.transport.nhttp.ServerWorker.processEntityEnclosingMethod(ServerWorker.java:418)
at org.apache.synapse.transport.nhttp.ServerWorker.run(ServerWorker.java:261)
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)

Comment by Rajika Kumarasiri [ 01/Oct/12 ]

This is reported here https://wso2.org/jira/browse/ESBJAVA-1613 and https://wso2.org/jira/browse/ESBJAVA-1604

Rajika

Comment by Rajika Kumarasiri [ 01/Oct/12 ]

I have reduced the priority since you can invoke the secured CG service via an client. The try it will be fixed as part of the above two issues.

Rajika





[ESBJAVA-3361] Inconsistence fault handling for users and tenants Created: 30/Oct/12  Updated: 24/May/16

Status: Open
Project: WSO2 ESB
Component/s: Stratos ESB
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: Nuwan Wimalasekara Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: XML File soap11_fault_code_Server_synapse.xml    
Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

same fault handling synapse configuration behave differently for users and tenant.

attached soap11_fault_code_Server_synapse.xml configuration make different fault messages for receiver. It works fine for users, but tenants It sees not.

Same configuration send fault message for users
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<soapenv:Fault>
<faultcode xmlns:soap11Env="http://schemas.xmlsoap.org/soap/envelope/">soap11Env:Server</faultcode>
<faultstring>Soap11FaultCodeServerTestCase</faultstring>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>

for tenants
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:Server</faultcode>
<faultstring>Connection refused or failed for : localhost/127.0.0.1:9020, IO Exception occured : Connection refused</faultstring>
<detail>Connection refused or failed for : localhost/127.0.0.1:9020, IO Exception occured : Connection refused</detail>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>



 Comments   
Comment by Kasun Indrasiri [ 09/Dec/12 ]

This is not a blocker, hence lowering the priority.





[ESBJAVA-5157] Page is getting refresh after getting the successful message Created: 19/Sep/12  Updated: 11/Jul/17

Status: Open
Project: WSO2 ESB
Component/s: Cloud Gateway
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: Aparna Karunarathna Assignee: Rajika Kumarasiri
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

AS/ESB - Release pack
Java: 1.6.29


Severity: Major
Estimated Complexity: Moderate
Test cases added: No

 Description   

Page is getting refresh after getting the successful message

Steps to Reproduce
Start Appserver & ESB
Deploy a service in the Appserver and create proxy service for appserver service
Then add CG server to ESB server
Go to the Publish/Unpublish Service page and publish the service
Then click the switch to manual option and you'll get two messages
2nd one is successful message and then whole page is getting refresh again






[ESBJAVA-5183] CGAgent generates the invalid location in the generated WSDL for certain services Created: 17/Sep/12  Updated: 11/Jul/17

Status: Open
Project: WSO2 ESB
Component/s: Cloud Gateway
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: Rajika Kumarasiri Assignee: Rajika Kumarasiri
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File UserManagementDS.dbs    
Severity: Blocker
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Deploy the attach services and check the WSDL with normal case and when published to CG.

Rajika






[ESBJAVA-5156] [CG]TryIt is not working for very first invoke in the CG server Created: 27/Nov/12  Updated: 11/Jul/17

Status: Open
Project: WSO2 ESB
Component/s: Cloud Gateway
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: Aparna Karunarathna Assignee: Rajika Kumarasiri
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Browser: Firefox
Env: Dev setup


Severity: Major
Estimated Complexity: Moderate
Test cases added: No

 Description   

TryIt is not working in the CG server( this is happening to its very first invoke after tenant gets loading)

Steps to Reproduce
login to Appserver & deploy a simplestockquoteservice to appserver
then logout from AppServer
login to ESB and create proxy service for simplestockquoteservice
add CG server details to ESB (Home> Configure > Cloud Gateway Agent> Add/Edit Server )
Publish the service to CG server
Logout from ESB and login to CG server and invoke the service via Tryit

*******************************************************************************
TID: [0] [CG] [2012-11-28 10:48:57,667] INFO

{org.apache.axis2.transport.http.HTTPSender} - Unable to sendViaPost to urlhttp://cloudgateway.stratosdev.private.wso2.com:8280/services/t/ank.com/SimpleStockQuoteService.SimpleStockQuoteServiceHttpSoap12Endpoint {org.apache.axis2.transport.http.HTTPSender}

java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:150)
at java.net.SocketInputStream.read(SocketInputStream.java:121)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
at java.io.BufferedInputStream.read(BufferedInputStream.java:254)
at org.apache.commons.httpclient.HttpParser.readRawLine(HttpParser.java:78)
at org.apache.commons.httpclient.HttpParser.readLine(HttpParser.java:106)
at org.apache.commons.httpclient.HttpConnection.readLine(HttpConnection.java:1116)
at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.readLine(MultiThreadedHttpConnectionManager.java:1413)
at org.apache.commons.httpclient.HttpMethodBase.readStatusLine(HttpMethodBase.java:1973)
at org.apache.commons.httpclient.HttpMethodBase.readResponse(HttpMethodBase.java:1735)
at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:1098)
at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:398)
at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
at org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(AbstractHTTPSender.java:621)
at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:193)
at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:75)
at org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:450)
at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:277)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:443)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:406)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:229)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165)
at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:555)
at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:531)
at org.apache.jsp.admin.jsp.WSRequestXSSproxy_005fajaxprocessor_jsp._jspService(WSRequestXSSproxy_005fajaxprocessor_jsp.java:272)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.wso2.carbon.ui.JspServlet.service(JspServlet.java:161)
at org.wso2.carbon.ui.TilesJspServlet.service(TilesJspServlet.java:80)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.eclipse.equinox.http.helper.ContextPathServletAdaptor.service(ContextPathServletAdaptor.java:36)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:67)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.service(DelegationServlet.java:68)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.wso2.carbon.tomcat.ext.filter.CharacterSetFilter.doFilter(CharacterSetFilter.java:61)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:172)
at org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:156)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
at org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:52)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1001)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1653)
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)






[ESBJAVA-2914] wso2ESB 4.8.0 not working for transactions Created: 16/Jan/14  Updated: 24/May/16

Status: Open
Project: WSO2 ESB
Component/s: Proxy Services Management
Affects Version/s: 4.8.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: faisal shaik Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: ESB
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

ubuntu,wso2dss3.0.1 ,wso2esb4.8.0


Attachments: File Transaction.dbs     XML File TransactionProxy.xml     PNG File ibx4q.png    
Severity: Major
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Test cases added: Yes
Affects Docs:
Yes

 Description   

Hi
I am using wso2esb4.8.0 and wso2dss3.0.1.My issue is i wish to insert the data into 2 tables its working nicely but i wish to applay transaction for my tables both table exist in same DB.If my 2nd table going fail on any moment that time my 1 st table should be rollback for that my DSS data source configuration is
and my dataservice is like this and i enabled boxcar for transaction

<data disableStreaming="true" enableBoxcarring="true" name="Transaction" serviceNamespace="http://ws.wso2.org/dataservice">
<config id="default">
<property name="carbon_datasource_name">USCProduction</property>
</config>
<query id="insertinto_mclient" useConfig="default">
<sql>insert into mclient(clientcode,clientname,createdbyid,modifiedbyid) values(?,?,?,?)</sql>
<param name="clientcode" ordinal="1" sqlType="STRING"/>
<param name="clientname" ordinal="2" sqlType="STRING"/>
<param name="createdbyid" ordinal="3" sqlType="BIGINT"/>
<param name="modifiedbyid" ordinal="4" sqlType="BIGINT"/>
</query>
<query id="insertinto_mcompany" useConfig="default">
<sql>insert into mcompany(companycode,companyname,createdbyid,modifiedbyid,clientid) values(?,?,?,?,?)</sql>
<param name="companycode" ordinal="1" sqlType="STRING"/>
<param name="comapnyname" ordinal="2" sqlType="STRING"/>
<param name="createdbyid" ordinal="3" sqlType="BIGINT"/>
<param name="modifiedbyid" ordinal="4" sqlType="BIGINT"/>
<param name="clientid" ordinal="5" sqlType="BIGINT"/>
</query>
<operation disableStreaming="true" name="insertinto_mclient_OP" returnRequestStatus="true">
<call-query href="insertinto_mclient">
<with-param name="clientcode" query-param="clientcode"/>
<with-param name="clientname" query-param="clientname"/>
<with-param name="createdbyid" query-param="createdbyid"/>
<with-param name="modifiedbyid" query-param="modifiedbyid"/>
</call-query>
</operation>
<operation disableStreaming="true" name="insertinto_mcompany_OP" returnRequestStatus="true">
<call-query href="insertinto_mcompany">
<with-param name="companycode" query-param="companycode"/>
<with-param name="comapnyname" query-param="comapnyname"/>
<with-param name="createdbyid" query-param="createdbyid"/>
<with-param name="modifiedbyid" query-param="modifiedbyid"/>
<with-param name="clientid" query-param="clientid"/>
</call-query>
</operation>
</data>
and my proxy service is
<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
name="TransactionProxy"
transports="https,http"
statistics="disable"
trace="disable"
startOnLoad="true">
<target>
<inSequence>
<log level="full">
<property name="M1" value="************HITTING Transaction PROXY************"/>
</log>
<property name="OUT_ONLY" value="true"/>
<property name="companycode" expression="//companycode/text()"/>
<property name="companyname" expression="//companyname/text()"/>
<property name="clientcode" expression="//clientcode/text()"/>
<property name="clientname" expression="//clientname/text()"/>
<payloadFactory media-type="xml">
<format>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:dat="http://ws.wso2.org/dataservice">
<soapenv:Header/>
<soapenv:Body/>
</soapenv:Envelope>
</format>
<args/>
</payloadFactory>
<log level="full">
<property name="M2" value="************HITTING Transaction PROXY************"/>
</log>
<header name="Action" value="urn:begin_boxcar"/>
<callout serviceURL="http://192.168.1.201:9764/services/Transaction/begin_boxcar"
action="urn:begin_boxcar">
<source type="envelope"/>
<target xmlns:s12="http://www.w3.org/2003/05/soap-envelope"
xmlns:s11="http://schemas.xmlsoap.org/soap/envelope/"
xpath="s11:Body/child::[fn:position()=1] | s12:Body/child::[fn:position()=1]"/>
</callout>
<payloadFactory media-type="xml">
<format>
<p:insertinto_mclient_OP xmlns="http://ws.wso2.org/dataservice">
<xs:clientcode xmlns:xs="http://ws.wso2.org/dataservice">$1</xs:clientcode>
<xs:clientname xmlns:xs="http://ws.wso2.org/dataservice">$2</xs:clientname>
<xs:createdbyid xmlns:xs="http://ws.wso2.org/dataservice">-1</xs:createdbyid>
<xs:modifiedbyid xmlns:xs="http://ws.wso2.org/dataservice">-1</xs:modifiedbyid>
</p:insertinto_mclient_OP>
</format>
<args>
<arg evaluator="xml" expression="get-property('clientcode')"/>
<arg evaluator="xml" expression="get-property('clientname')"/>
</args>
</payloadFactory>
<header name="Action" value="urn:insertinto_mclient_OP"/>
<callout serviceURL="http://192.168.1.201:9764/services/Transaction/"
action="urn:insertinto_mclient_OP">
<source xmlns:s12="http://www.w3.org/2003/05/soap-envelope"
xmlns:s11="http://schemas.xmlsoap.org/soap/envelope/"
xpath="s11:Body/child::[fn:position()=1] | s12:Body/child::[fn:position()=1]"/>
<target xmlns:s12="http://www.w3.org/2003/05/soap-envelope"
xmlns:s11="http://schemas.xmlsoap.org/soap/envelope/"
xpath="s11:Body/child::[fn:position()=1] | s12:Body/child::[fn:position()=1]"/>
</callout>
<payloadFactory media-type="xml">
<format>
<p:insertinto_mcompany_OP xmlns="http://ws.wso2.org/dataservice">
<xs:companycode xmlns:xs="http://ws.wso2.org/dataservice">$1</xs:companycode>
<xs:comapnyname xmlns:xs="http://ws.wso2.org/dataservice">$2</xs:comapnyname>
<xs:createdbyid xmlns:xs="http://ws.wso2.org/dataservice">-1</xs:createdbyid>
<xs:modifiedbyid xmlns:xs="http://ws.wso2.org/dataservice">-1</xs:modifiedbyid>
<xs:clientid xmlns:xs="http://ws.wso2.org/dataservice">-1</xs:clientid>
</p:insertinto_mcompany_OP>
</format>
<args>
<arg evaluator="xml" expression="get-property('companycode')"/>
<arg evaluator="xml" expression="get-property('companyname')"/>
</args>
</payloadFactory>
<log level="full">
<property name="M5" value="*************hitting2nd dss****"/>
</log>
<header name="Action" value="urn:insertinto_mcompany_OP"/>
<callout serviceURL="http://192.168.1.201:9764/services/Transaction/"
action="urn:insertinto_mcompany_OP">
<source xmlns:s12="http://www.w3.org/2003/05/soap-envelope"
xmlns:s11="http://schemas.xmlsoap.org/soap/envelope/"
xpath="s11:Body/child::[fn:position()=1] | s12:Body/child::[fn:position()=1]"/>
<target xmlns:s12="http://www.w3.org/2003/05/soap-envelope"
xmlns:s11="http://schemas.xmlsoap.org/soap/envelope/"
xpath="s11:Body/child::[fn:position()=1] | s12:Body/child::[fn:position()=1]"/>
</callout>
<payloadFactory media-type="xml">
<format>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:dat="http://ws.wso2.org/dataservice">
<soapenv:Header/>
<soapenv:Body/>
</soapenv:Envelope>
</format>
<args/>
</payloadFactory>
<log level="full">
<property name="M3" value="************HITTING Transaction PROXY************"/>
</log>
<header name="Action" value="urn:end_boxcar"/>
<callout serviceURL="http://192.168.1.201:9764/services/Transaction/end_boxcar"
action="urn:end_boxcar">
<source type="envelope"/>
<target xmlns:s12="http://www.w3.org/2003/05/soap-envelope"
xmlns:s11="http://schemas.xmlsoap.org/soap/envelope/"
xpath="s11:Body/child::[fn:position()=1] | s12:Body/child::[fn:position()=1]"/>
</callout>
<log level="full">
<property name="M4" value="************HITTING Transaction PROXY************"/>
</log>
</inSequence>
<outSequence>
<send/>
</outSequence>
</target>
<description/>
</proxy>
box_carying is working in wso2dss but not in wso2esb is there any session management is there
i started with begin_boxcar and end with end_boxcar.BUt while i am doing this with dss if i start with begin_boxcar then 1st insert after that i checked the table but ther is no data insertion if i insert into 2nd table and end with end_boxcar then only data inserting into 2 tables.Where as i checked with proxy service configuration like above strted with begin_boxcar and inserted 1st table and checked the table dat is there means with out end_boxcar also data inserted properly
and
how can i get DSS session into proxy.what is this JSESSIONID



 Comments   
Comment by faisal shaik [ 17/Jan/14 ]

how to get the boxcarying session id in to proxy?

Comment by faisal shaik [ 20/Jan/14 ]

wso2esb support for transactions are not.

<payloadFactory media-type="xml">
<format>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:dat="http://ws.wso2.org/dataservice">
<soapenv:Header/>
<soapenv:Body/>
</soapenv:Envelope>
</format>
<args/>
</payloadFactory>
<log level="full">
<property name="M2" value="************HITTING Transaction PROXY************"/>
</log>
<header name="Action" value="urn:begin_boxcar"/>
<property name="setCookieHeader"
expression="$trp:Set-Cookie"
scope="default"
type="STRING"/>
<callout serviceURL="http://1localhost:9764/services/Transaction/begin_boxcar"
action="urn:begin_boxcar">
<source type="envelope"/>
<target xmlns:s12="http://www.w3.org/2003/05/soap-envelope"
xmlns:s11="http://schemas.xmlsoap.org/soap/envelope/"
xpath="s11:Body/child::[fn:position()=1] | s12:Body/child::[fn:position()=1]"/>
</callout>
<property name="setCookieHeader5" expression="$trp:JSESSIONID"/>
<log level="full">
<property name="JSession" expression="get-property('setCookieHeader')"/>
</log>

how to get dss JSESSIONID in to wso2esb proxy





[ESBJAVA-5171] ESB trying to add user role during the server startup either it's connected to the READ ONLY ldap. Created: 18/Feb/14  Updated: 11/Jul/17

Status: Open
Project: WSO2 ESB
Component/s: Cloud Gateway
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: Chamara Silva Assignee: Kevin Ratnasekera
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Text File patch-ESBJAVA-3012.txt     XML File user-mgt.xml    
Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

1. enable readonly ldap config and start esb server.
2. ESB trying to create new admin role.
ERROR - CGAgentServiceComponent Cloud not activated the CGAgentServiceComponent.
org.wso2.carbon.user.core.UserStoreException: Cannot add role to Read Only user store unless it is primary
at org.wso2.carbon.user.core.common.AbstractUserStoreManager.addRole(AbstractUserStoreManager.java:2070)
at org.wso2.carbon.user.core.common.AbstractUserStoreManager.addRole(AbstractUserStoreManager.java:3391)
at org.wso2.carbon.cloud.gateway.agent.internal.CGAgentServiceComponent.activate(CGAgentServiceComponent.java:123)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
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:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
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:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:662)



 Comments   
Comment by Asela Pathberiya [ 29/May/14 ]

We can avoid this issue.. This does not effect to ESB.

However you can avoid this error by creating a role called "cg_publisher" and "cg_unpublisher" in your LDAP. You can do it manually.

As a proper fix, these role must be created as internal roles.

Comment by Amila Maharachchi [ 27/Aug/14 ]

Attaching the fix for this

Comment by Amila Maharachchi [ 27/Aug/14 ]

I still cannot resolve this because the patch is not applied to the public branch. It can only be done after migrating the cloud gateway agent component to github wso2 repo.





[ESBJAVA-5165] Soap Body part missing when a proxy published to CG Created: 29/Jan/14  Updated: 11/Jul/17

Status: Open
Project: WSO2 ESB
Component/s: Cloud Gateway
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: Shashika Ubhayaratne Assignee: Rajika Kumarasiri
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

ESB 4.8.1 + CG 1.0.0.


Severity: Major
Test cases added: Yes

 Description   

1. Add CG server to ESB
2. Publish proxy service to ESB
3. Send following request to CG end point:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:echo="http://echo.services.core.carbon.wso2.org">
<soapenv:Header/>
<soapenv:Body>
<echo:echoInt>
<!-Optional:->
<in>1</in>
</echo:echoInt>
</soapenv:Body>
</soapenv:Envelope>

Response:
HTTP/1.1 200 OK
Content-Type: text/xml; charset=UTF-8
Date: Wed, 29 Jan 2014 13:22:28 GMT
Server: Synapse-HttpComponents-NIO
Transfer-Encoding: chunked
Connection: Keep-Alive

<?xml version="1.0" encoding="utf-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body></soapenv:Body></soapenv:Envelope>

Note:
Same proxy request send to ESB endpoint:
HTTP/1.1 200 OK
Content-Type: application/soap+xml;charset=UTF-8
Date: Wed, 29 Jan 2014 13:26:54 GMT
Server: WSO2-PassThrough-HTTP
Transfer-Encoding: chunked
Connection: Keep-Alive

<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"><soapenv:Body><ns:echoIntResponse xmlns:ns="http://echo.services.core.carbon.wso2.org"><return>1</return></ns:echoIntResponse></soapenv:Body></soapenv:Envelope>

Note:
Bosy related details removed by CGAgent.






[ESBJAVA-5180] CG server is not responding for curl request Created: 27/Sep/12  Updated: 11/Jul/17

Status: Open
Project: WSO2 ESB
Component/s: Cloud Gateway
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: Aparna Karunarathna Assignee: Rajika Kumarasiri
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Server: wso2cg-1.0.0(http://builder1.us1.wso2.org/~lakmali/26-10-12/cg/)
OS: Ubuntu
Java: 1.6.29
----------------------------------
Server: AppServer (Released pack)
OS: Win 7
Java: 1.6.31


Attachments: File MobileDirectoryService.aar    
Severity: Critical
Estimated Complexity: Moderate
Test cases added: No

 Description   

CG server is not responding for curl request

Steps to reproduce
Start CG & AppServer
login to the CG server and create tenant user
Login to AppServer and configure the CG setting in AppServer for tenant user
then upload the MobileDirectoryService.aar service and publish the service
then post a service via curl and the invoke the get method, both requests got the following error

C:\>curl --data "user=ccc&mobileNumber=33333" -X POST -H "Content-Type: application/x-www-form-urlencoded" http://10.100.3.136:8280/services/t/ank.com/MobileDirectoryService/mobile/
curl: (52) Empty reply from server

C:\>curl -X GET http://10.100.3.136:8280/services/t/ank.com/MobileDirectoryService/mobile/bbb
curl: (52) Empty reply from server



 Comments   
Comment by Rajika Kumarasiri [ 28/Sep/12 ]

Did you try using <parameter name="disableRestServiceDispatching" locked="false">true</parameter> parameter in nhttp transport receiver section as in https://wso2.org/jira/browse/ESBJAVA-1469.

Rajika





[ESBJAVA-2753] [EntitlementMediator] Once did some change in esb side, it took nearly 15min to update and execute the correct result for a XACML policy Created: 26/Nov/13  Updated: 25/Jul/15

Status: Open
Project: WSO2 ESB
Component/s: Mediators
Affects Version/s: 4.8.0 Alpha
Fix Version/s: None

Type: Improvement Priority: High
Reporter: Suneth Ranasinghe Assignee: madhuranga bandara
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: No

 Description   

I have changed the XACML policy (role) and try to invoke the given service which should not be permitted for the given user. But its allowing the user to access the service for nearly like 15mins.






[ESBJAVA-5174] Dashboard links are not working on Cloud Gateway Created: 04/Mar/13  Updated: 11/Jul/17

Status: Open
Project: WSO2 ESB
Component/s: Cloud Gateway
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: High
Reporter: Shashika Ubhayaratne Assignee: Sanjaya Ratnaweera
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

stratos 1.6.0


Severity: Major
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Test cases added: Not-applicable

 Description   

1. start ELB, managre and cg
2. Login to CG mgt console

Issue: dashboard links are not working






[ESBJAVA-4435] Unable to execute EDI to database insertion with smooks mediator Created: 23/Feb/16  Updated: 09/Jun/16

Status: Open
Project: WSO2 ESB
Component/s: Mediators
Affects Version/s: 5.0.0-M2
Fix Version/s: None

Type: Bug Priority: High
Reporter: Chathurika De Silva Assignee: Isuru Udana Loku Narangoda
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

OS: Ubuntu 14.04
JDK: 1.8.0


Attachments: XML File Smooks6.xml     File edi.edi     XML File edimapping.xml     XML File smooks_edi_db_config.xml    
Severity: Major
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Test cases added: Yes

 Description   

Using the given configuration files, and using [1] as the guide line i have tried in executing this using WSO2 ESB, but failed with the following error

[2016-02-23 18:14:50,191] ERROR - SequenceMediator Failed to set paramater configuration value on 'org.milyn.db.DirectDataSource#driver'.
org.milyn.cdr.SmooksConfigurationException: Failed to set paramater configuration value on 'org.milyn.db.DirectDataSource#driver'.
	at org.milyn.cdr.annotation.Configurator.applyConfigParam(Configurator.java:336)
	at org.milyn.cdr.annotation.Configurator.processFieldConfigParamAnnotations(Configurator.java:146)
	at org.milyn.cdr.annotation.Configurator.processFieldConfigAnnotations(Configurator.java:126)
	at org.milyn.cdr.annotation.Configurator.configure(Configurator.java:82)
	at org.milyn.cdr.annotation.Configurator.configure(Configurator.java:66)
	at org.milyn.delivery.JavaContentHandlerFactory.create(JavaContentHandlerFactory.java:69)
	at org.milyn.delivery.ContentDeliveryConfigBuilder$ContentHandlerExtractionStrategy.addCDU(ContentDeliveryConfigBuilder.java:642)
	at org.milyn.delivery.ContentDeliveryConfigBuilder$ContentHandlerExtractionStrategy.applyCDUStrategy(ContentDeliveryConfigBuilder.java:568)
	at org.milyn.delivery.ContentDeliveryConfigBuilder$ContentHandlerExtractionStrategy.applyStrategy(ContentDeliveryConfigBuilder.java:556)
	at org.milyn.delivery.ContentDeliveryConfigBuilder$SmooksResourceConfigurationTableIterator.iterate(ContentDeliveryConfigBuilder.java:730)
	at org.milyn.delivery.ContentDeliveryConfigBuilder$SmooksResourceConfigurationTableIterator.access$300(ContentDeliveryConfigBuilder.java:709)
	at org.milyn.delivery.ContentDeliveryConfigBuilder.extractContentHandlers(ContentDeliveryConfigBuilder.java:494)
	at org.milyn.delivery.ContentDeliveryConfigBuilder.load(ContentDeliveryConfigBuilder.java:356)
	at org.milyn.delivery.ContentDeliveryConfigBuilder.getConfig(ContentDeliveryConfigBuilder.java:147)
	at org.milyn.container.standalone.StandaloneExecutionContext.<init>(StandaloneExecutionContext.java:91)
	at org.milyn.container.standalone.StandaloneExecutionContext.<init>(StandaloneExecutionContext.java:65)
	at org.milyn.Smooks.createExecutionContext(Smooks.java:418)
	at org.milyn.Smooks.createExecutionContext(Smooks.java:376)
	at org.wso2.carbon.mediator.transform.SmooksMediator.mediate(SmooksMediator.java:115)
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:86)
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:49)
	at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:163)
	at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:211)
	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
	at org.apache.axis2.transport.base.AbstractTransportListener.handleIncomingMessage(AbstractTransportListener.java:328)
	at org.apache.synapse.transport.vfs.VFSTransportListener.processFile(VFSTransportListener.java:753)
	at org.apache.synapse.transport.vfs.VFSTransportListener.scanFileOrDirectory(VFSTransportListener.java:407)
	at org.apache.synapse.transport.vfs.VFSTransportListener.poll(VFSTransportListener.java:177)
	at org.apache.synapse.transport.vfs.VFSTransportListener.poll(VFSTransportListener.java:124)
	at org.apache.axis2.transport.base.AbstractPollingTransportListener$1$1.run(AbstractPollingTransportListener.java:67)
	at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)
Caused by: org.milyn.javabean.DataDecodeException: Failed to decode 'com.mysql.jdbc.Driver' as a Java Class.
	at org.milyn.javabean.decoders.ClassDecoder.decode(ClassDecoder.java:36)
	at org.milyn.cdr.annotation.Configurator.applyConfigParam(Configurator.java:334)
	... 33 more
Caused by: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
	at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:348)
	at org.milyn.util.ClassUtil.forName(ClassUtil.java:95)
	at org.milyn.javabean.decoders.ClassDecoder.decode(ClassDecoder.java:34)
	... 34 more
[2016-02-23 18:14:50,208]  INFO - LogMediator To: , WSAction: urn:mediate, SOAPAction: urn:mediate, MessageID: urn:uuid:66E5DBEE35D675C51B1456231489841, Direction: request, MESSAGE = Executing default 'fault' sequence, ERROR_CODE = 0, ERROR_MESSAGE = Failed to set paramater configuration value on 'org.milyn.db.DirectDataSource#driver'., Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><text xmlns="http://ws.apache.org/commons/ns/payload">MLS*Wed Nov 15 13:45:28 EST 2006
HDR*1*0*59.97*64.92*4.95
CUS*user1*Harry^Fletcher*SD
ORD*1*1*364*HarryPorter*28.98
ORD*2*1*299*Pulp Fiction*30.99
HDR*2*0*81.30*91.06*9.76
CUS*user2*George^Hook*SD
ORD*3*2*983*Gone with The Wind*25.80
ORD*4*3*299*Lethal Weapon 2*55.50
</text></soapenv:Body></soapenv:Envelope>

Followed [2] to get the namespaces for smooks 1.5.

[1] https://github.com/smooks/smooks/blob/v1.5.1/smooks-examples/db-extract-transform-load/smooks-configs/datasources.xml
[2] http://www.smooks.org/mediawiki/index.php?title=V1.5:Smooks_v1.5_User_Guide_c6_c11



 Comments   
Comment by Isuru Udana Loku Narangoda [ 08/Jun/16 ]

Can you please explain the issue in detail.

From the error log it seems it fails to find mysql driver.

Comment by Chathurika De Silva [ 08/Jun/16 ]

Hi Isuru

I have the mysql connector in <Product_Home>/repository/components/lib. There is no WSO2 ESB documentation to follow in this as well.
If you have such a sample documented, please be kind enough to point it to me, so I can verify my configs.

Thank You
Erandi





[ESBJAVA-3837] RequestSecurityTokenTemplate from IssuedToken policy isn't used Created: 22/Jun/15  Updated: 06/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: Core Engine, Registry
Affects Version/s: 4.8.1
Fix Version/s: None

Type: Bug Priority: High
Reporter: Alexey Smirnov Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: ESB, IS
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

RedHat Linux


Attachments: File STS.rar     XML File STSPolicy.xml    
Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

We use STS in WSO2 IS to secure echo service on WSO2ESB. We use non-secure NewTestSTS proxy (attached in archive STS.rar) to access this secured service. STSPolicy.xml (attached) is used to secure echo service. It's stored in configuration registry (or can be stored in governance registry).
First attempt of service call works fine, STS is being got from WSO2IS and is sent to echo service. But all the following attempts end with error "Requested KeyType is missing" on the IS side.
In debug log of ESB we see this message:
[2015-06-22 17:02:12,051] DEBUG - Using RSTTemplate: <spn:RequestSecurityTokenTemplate xmlns:spn="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702" xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust">

</spn:RequestSecurityTokenTemplate>

{org.apache.rahas.client.STSClient}

After re-saving of policy, service call can be performed again






[ESBJAVA-4200] FORCE_SC_ACCEPTED not working as expected when ESB cannot connect to the backend IP. Created: 08/Sep/15  Updated: 06/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: Properties Management
Affects Version/s: 4.9.0 - RC2
Fix Version/s: None

Type: Bug Priority: High
Reporter: Sandapa Handakumbura Assignee: Nadeeshaan Gunasinghe
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Pack : WSO2 ESB-4.9.0-RC4 (standalone)
Java version : jdk1.8.0_45


Severity: Critical
Estimated Complexity: Moderate
Test cases added: Not-applicable

 Description   

When we invoke this proxy we do not get the 202 Accepted. This occurs only when the log mediator is present. When we remove the log mediator we get the 202 Accepted as expected.

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
name="mypx"
transports="http https"
startOnLoad="true"
trace="disable">
<description/>
<target>
<inSequence>
<property name="OUT_ONLY" value="true" scope="default" type="STRING"/>
<property name="FORCE_SC_ACCEPTED"
value="true"
scope="axis2"
type="STRING"/>
<log>
<property name="**** IN ******" value="AAAAAAAAAAAAA"/>
</log>
<send>
<endpoint>
<address uri="http://10.10.10.10:9000/services/SimpleStockQuoteService"/>
</endpoint>
</send>
</inSequence>
</target>
</proxy>



 Comments   
Comment by Nadeeshaan Gunasinghe [ 06/Aug/16 ]

When sending the request content the thread will wait until it's been notified after submit request or any error occurred. After that the particular thread will be released according to the current implementation.





[ESBJAVA-4155] Fault sequence not invoked in tenant mode Created: 03/Sep/15  Updated: 06/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.9.0 - Beta
Fix Version/s: None

Type: Bug Priority: High
Reporter: Jason De Silva Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Pack : wso2esb-4.9.0-RC2.zip
Message broker - Apache activemq 5.12.0
OS: Ubuntu 14.04
JDK: 1.7.0_79
Browser : Google Chrome Version 43.0.2357.65 (64-bit)
Setup: Standalone


Attachments: XML File activemq.xml     XML File api.xml     XML File store.xml    
Severity: Major
Estimated Complexity: Moderate
Test cases added: No

 Description   

Steps
1. Create a user in activemq with read / write permissions ( this user does not have admin permission(queue creation) in activemq)
2. Disable anonymous access in activemq
3. Add the activemq jars to esb and create jms message store by giving credentials of the user created in step 1.
4. Create a Tenant and login to esb from that tenant
4. Create a simple api with "post" method and set the in sequence to the message store and set the fault sequence to the default fault sequence.
5. When the api is called the below exception is thrown which is correct but the fault sequence is not called.

In super tenant mode the exact scenario will invoke the fault sequence correctly.

[2015-09-03 18:59:57,743] ERROR - JmsStore Could not create a Message Producer for Store [NewRC1]. Error:User jason is not authorized to create: queue://idntink
javax.jms.JMSSecurityException: User jason is not authorized to create: queue://idntink
	at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:52)
	at org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1398)
	at org.apache.activemq.ActiveMQSession.syncSendPacket(ActiveMQSession.java:2085)
	at org.apache.activemq.ActiveMQMessageProducer.<init>(ActiveMQMessageProducer.java:124)
	at org.apache.activemq.ActiveMQSession.createProducer(ActiveMQSession.java:1116)
	at org.apache.synapse.message.store.impl.jms.JmsStore.newProducer(JmsStore.java:361)
	at org.apache.synapse.message.store.impl.jms.JmsStore.getProducer(JmsStore.java:140)
	at org.apache.synapse.mediators.store.MessageStoreMediator.mediate(MessageStoreMediator.java:119)
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:81)
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:48)
	at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:149)
	at org.apache.synapse.rest.Resource.process(Resource.java:297)
	at org.apache.synapse.rest.API.process(API.java:378)
	at org.apache.synapse.rest.RESTRequestHandler.dispatchToAPI(RESTRequestHandler.java:97)
	at org.apache.synapse.rest.RESTRequestHandler.process(RESTRequestHandler.java:65)
	at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:266)
	at org.apache.synapse.core.axis2.SynapseMessageReceiver.receive(SynapseMessageReceiver.java:83)
	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
	at org.wso2.carbon.core.multitenancy.MultitenantMessageReceiver.processRESTRequest(MultitenantMessageReceiver.java:611)
	at org.wso2.carbon.core.multitenancy.MultitenantMessageReceiver.doNhttpREST(MultitenantMessageReceiver.java:555)
	at org.wso2.carbon.core.multitenancy.MultitenantMessageReceiver.doREST(MultitenantMessageReceiver.java:366)
	at org.wso2.carbon.core.multitenancy.MultitenantMessageReceiver.processRequest(MultitenantMessageReceiver.java:224)
	at org.wso2.carbon.core.multitenancy.MultitenantMessageReceiver.receive(MultitenantMessageReceiver.java:78)
	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
	at org.apache.synapse.transport.passthru.ServerWorker.processNonEntityEnclosingRESTHandler(ServerWorker.java:317)
	at org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:363)
	at org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:142)
	at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.SecurityException: User jason is not authorized to create: queue://idntink
	at org.apache.activemq.security.AuthorizationBroker.addDestination(AuthorizationBroker.java:115)
	at org.apache.activemq.broker.MutableBrokerFilter.addDestination(MutableBrokerFilter.java:177)
	at org.apache.activemq.broker.region.RegionBroker.addProducer(RegionBroker.java:398)
	at org.apache.activemq.broker.jmx.ManagedRegionBroker.addProducer(ManagedRegionBroker.java:267)
	at org.apache.activemq.broker.BrokerFilter.addProducer(BrokerFilter.java:107)
	at org.apache.activemq.advisory.AdvisoryBroker.addProducer(AdvisoryBroker.java:188)
	at org.apache.activemq.broker.CompositeDestinationBroker.addProducer(CompositeDestinationBroker.java:56)
	at org.apache.activemq.broker.BrokerFilter.addProducer(BrokerFilter.java:107)
	at org.apache.activemq.broker.BrokerFilter.addProducer(BrokerFilter.java:107)
	at org.apache.activemq.broker.BrokerFilter.addProducer(BrokerFilter.java:107)
	at org.apache.activemq.security.AuthorizationBroker.addProducer(AuthorizationBroker.java:201)
	at org.apache.activemq.broker.MutableBrokerFilter.addProducer(MutableBrokerFilter.java:112)
	at org.apache.activemq.broker.TransportConnection.processAddProducer(TransportConnection.java:618)
	at org.apache.activemq.command.ProducerInfo.visit(ProducerInfo.java:108)
	at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:338)
	at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:188)
	at org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:50)
	at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113)
	at org.apache.activemq.transport.AbstractInactivityMonitor.onCommand(AbstractInactivityMonitor.java:300)
	at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)
	at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:214)
	at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:196)
	... 1 more
[2015-09-03 18:59:57,746]  WARN - JmsProducer [NewRC1-P-2]. Ignored MessageID : urn:uuid:3b254fc3-8979-4829-85e9-05b7383ff84d
[2015-09-03 18:59:57,746] ERROR - MessageStoreMediator Failed to store message [urn:uuid:aecb1192-a044-4b7b-aea1-abe49b81951c] in store [NewRC1].
[2015-09-03 18:59:57,746] ERROR - bbb Failed to store message [urn:uuid:aecb1192-a044-4b7b-aea1-abe49b81951c] in store [NewRC1].
[2015-09-03 18:59:57,747]  INFO - LogMediator To: local://axis2services/aaa, MessageID: urn:uuid:aecb1192-a044-4b7b-aea1-abe49b81951c, Direction: request, Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><text xmlns="http://ws.apache.org/commons/ns/payload">abdef</text></soapenv:Body></soapenv:Envelope>
[2015-09-03 19:02:57,929]  WARN - SourceHandler Connection time out after request is read: http-incoming-3


 Comments   
Comment by Jason De Silva [ 03/Sep/15 ]

Attached the activemq.xml xml (broker user configuration) and the ESB api and store configurations.





[ESBJAVA-5209] Shows an error which doesn't helpful to figure out exact reason when backend returns "401 Unauthorized" Created: 07/Aug/17  Updated: 15/Aug/17

Status: Open
Project: WSO2 ESB
Component/s: Security
Affects Version/s: 5.0.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Asanka Vithanage Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Critical
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Steps:
1. Try to invoke the secured DSS service without providing the required Credential

Issue:
ESB shows following exception[1] which doesn't give actual reason of the exception. Once we enable the wire log It shows the details required to figure out actual error. See wire log [2]

[1]
[2017-08-07 14:32:44,049] ERROR - RelaySecuirtyMessageBuilderDispatchandler Error while executing the message at relaySecurity handler
java.lang.NullPointerException
at org.apache.axis2.handlers.addressing.AddressingInHandler.doInvoke(AddressingInHandler.java:129)
at org.apache.axis2.handlers.AbstractTemplatedHandler.invoke(AbstractTemplatedHandler.java:44)
at org.apache.synapse.transport.passthru.util.RelayUtils.processAddressing(RelayUtils.java:200)
at org.apache.synapse.transport.passthru.util.RelayUtils.builldMessage(RelayUtils.java:155)
at org.apache.synapse.transport.passthru.util.RelayUtils.buildMessage(RelayUtils.java:100)
at org.apache.synapse.transport.passthru.util.RelaySecuirtyMessageBuilderDispatchandler.build(RelaySecuirtyMessageBuilderDispatchandler.java:166)
at org.apache.synapse.transport.passthru.util.RelaySecuirtyMessageBuilderDispatchandler.invoke(RelaySecuirtyMessageBuilderDispatchandler.java:102)
at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:261)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:167)
at org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:261)
at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
[2017-08-07 14:32:44,051] ERROR - NativeWorkerPool Uncaught exception
java.lang.NullPointerException
at org.apache.axis2.handlers.addressing.AddressingInHandler.doInvoke(AddressingInHandler.java:129)
at org.apache.axis2.handlers.AbstractTemplatedHandler.invoke(AbstractTemplatedHandler.java:44)
at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:261)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:167)
at org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:261)
at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

[2]
[2017-08-07 14:32:44,040] DEBUG - wire HTTPS-Sender I/O dispatcher-2 << "POST /services/ABC_v1.1/ HTTP/1.1[\r][\n]"
[2017-08-07 14:32:44,042] DEBUG - wire HTTPS-Sender I/O dispatcher-2 << "Authorization: Basic Og==[\r][\n]"
[2017-08-07 14:32:44,042] DEBUG - wire HTTPS-Sender I/O dispatcher-2 << "Accept-Encoding: gzip,deflate[\r][\n]"
[2017-08-07 14:32:44,042] DEBUG - wire HTTPS-Sender I/O dispatcher-2 << "Content-Type: application/soap+xml;action="urn:searchPharmacies"; charset=UTF-8[\r][\n]"
[2017-08-07 14:32:44,042] DEBUG - wire HTTPS-Sender I/O dispatcher-2 << "Transfer-Encoding: chunked[\r][\n]"
[2017-08-07 14:32:44,042] DEBUG - wire HTTPS-Sender I/O dispatcher-2 << "Host: localhost:9444[\r][\n]"
[2017-08-07 14:32:44,042] DEBUG - wire HTTPS-Sender I/O dispatcher-2 << "Connection: Keep-Alive[\r][\n]"
[2017-08-07 14:32:44,042] DEBUG - wire HTTPS-Sender I/O dispatcher-2 << "User-Agent: Synapse-PT-HttpComponents-NIO[\r][\n]"
[2017-08-07 14:32:44,043] DEBUG - wire HTTPS-Sender I/O dispatcher-2 << "[\r][\n]"
[2017-08-07 14:32:44,043] DEBUG - wire HTTPS-Sender I/O dispatcher-2 << "39c[\r][\n]"
[2017-08-07 14:32:44,043] DEBUG - wire HTTPS-Sender I/O dispatcher-2 << "<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"><soapenv:Body><v1:searchPharmacies xmlns:v1="http://service.wso2.com/dataservices/ABC/v1/"><v1:memberId/><v1:Id>A </v1:Id><v1:City/><v1:State/><v1:ZipCode/><v1:clientCode/><v1:BenefitPlanId>MDLBCBSALX</v1:BenefitPlanId><v1:esnNetworkID/><v1:MinLatitude>44.72642964902131</v1:MinLatitude><v1:MaxLatitude>45.01628472148508</v1:MaxLatitude><v1:MinLongitude>-93.40020151506295</v1:MinLongitude><v1:MaxLongitude>-92.9912018115565</v1:MaxLongitude><v1:carrierID>22</v1:carrierID><v1:vaccineNetwork>PTVAC</v1:vaccineNetwork><v1:info>EIS</v1:info><v1:log>N</v1:log><v1:futureDate>2117-0712</v1:futureDate></v1:searchPharmacies></soapenv:Body></soapenv:Envelope>[\r][\n]"
[2017-08-07 14:32:44,043] DEBUG - wire HTTPS-Sender I/O dispatcher-2 << "0[\r][\n]"
[2017-08-07 14:32:44,043] DEBUG - wire HTTPS-Sender I/O dispatcher-2 << "[\r][\n]"
[2017-08-07 14:32:44,046] DEBUG - wire HTTPS-Sender I/O dispatcher-2 >> "HTTP/1.1 401 Unauthorized[\r][\n]"
[2017-08-07 14:32:44,046] DEBUG - wire HTTPS-Sender I/O dispatcher-2 >> "X-Frame-Options: DENY[\r][\n]"
[2017-08-07 14:32:44,046] DEBUG - wire HTTPS-Sender I/O dispatcher-2 >> "X-Content-Type-Options: nosniff[\r][\n]"
[2017-08-07 14:32:44,046] DEBUG - wire HTTPS-Sender I/O dispatcher-2 >> "X-XSS-Protection: 1; mode=block[\r][\n]"
[2017-08-07 14:32:44,046] DEBUG - wire HTTPS-Sender I/O dispatcher-2 >> "WWW-Authenticate: BASIC realm="WSO2 Data Services Server"[\r][\n]"
[2017-08-07 14:32:44,046] DEBUG - wire HTTPS-Sender I/O dispatcher-2 >> "Content-Type: text/html;charset=UTF-8[\r][\n]"
[2017-08-07 14:32:44,047] DEBUG - wire HTTPS-Sender I/O dispatcher-2 >> "Content-Length: 0[\r][\n]"
[2017-08-07 14:32:44,047] DEBUG - wire HTTPS-Sender I/O dispatcher-2 >> "Date: Mon, 07 Aug 2017 19:32:44 GMT[\r][\n]"
[2017-08-07 14:32:44,047] DEBUG - wire HTTPS-Sender I/O dispatcher-2 >> "Server: WSO2 Carbon Server[\r][\n]"
[2017-08-07 14:32:44,047] DEBUG - wire HTTPS-Sender I/O dispatcher-2 >> "[\r][\n]"
[2017-08-07 14:32:44,049] ERROR - RelaySecuirtyMessageBuilderDispatchandler Error while executing the message at relaySecurity handler
java.lang.NullPointerException
at org.apache.axis2.handlers.addressing.AddressingInHandler.doInvoke(AddressingInHandler.java:129)
at org.apache.axis2.handlers.AbstractTemplatedHandler.invoke(AbstractTemplatedHandler.java:44)
at org.apache.synapse.transport.passthru.util.RelayUtils.processAddressing(RelayUtils.java:200)
at org.apache.synapse.transport.passthru.util.RelayUtils.builldMessage(RelayUtils.java:155)
at org.apache.synapse.transport.passthru.util.RelayUtils.buildMessage(RelayUtils.java:100)
at org.apache.synapse.transport.passthru.util.RelaySecuirtyMessageBuilderDispatchandler.build(RelaySecuirtyMessageBuilderDispatchandler.java:166)
at org.apache.synapse.transport.passthru.util.RelaySecuirtyMessageBuilderDispatchandler.invoke(RelaySecuirtyMessageBuilderDispatchandler.java:102)
at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:261)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:167)
at org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:261)
at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
[2017-08-07 14:32:44,051] ERROR - NativeWorkerPool Uncaught exception
java.lang.NullPointerException
at org.apache.axis2.handlers.addressing.AddressingInHandler.doInvoke(AddressingInHandler.java:129)
at org.apache.axis2.handlers.AbstractTemplatedHandler.invoke(AbstractTemplatedHandler.java:44)
at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:261)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:167)
at org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:261)
at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
[2017-08-07 14:34:47,032] WARN - TimeoutHandler Expiring message ID : urn:uuid:46d0b7eb-154b-4a38-b255-2aaf7304d345; dropping message after GLOBAL_TIMEOUT of : 120 seconds for Endpoint [ABCDataServiceEndpoint_v1.1], URI : https://localhost:9444/services/ABC_v1.1/, Received through API : ABC-api_v1.0
[2017-08-07 14:35:43,935] WARN - SourceHandler Connection time out after request is read: http-incoming-8 Socket Timeout : 180000 Remote Address : 127.0.0.1/127.0.0.1:53007






[ESBJAVA-5210] [RabbitMQ] Publisher caching feature is needed to provide high TPS rates Created: 08/Aug/17  Updated: 15/Aug/17

Status: Open
Project: WSO2 ESB
Component/s: RabbitMQ Transport
Affects Version/s: 4.9.0
Fix Version/s: None

Type: New Feature Priority: High
Reporter: Jason De Silva Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Test cases added: Yes

 Description   

Currently, there is no publisher caching feature when ESB publishes as a RabbitMQ producer. This results in lower rate of tps due to connections are created for each message produced. Hence connection caching will help to achieve high tps numbers.






[ESBJAVA-5212] [VFS] Sever goes OOM after SoftRefFilesCache accumulating Created: 18/Aug/17  Updated: 18/Aug/17

Status: Open
Project: WSO2 ESB
Component/s: VFS Transport
Affects Version/s: 5.0.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Gihan Anuruddha Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Advanced
Test cases added: Yes

 Description   

The server goes OOM memory after several hours when there were heavy VFS transfers. This is mainly due to SoftRefFileCache not cleaning properly in common-vfs2.






[ESBJAVA-3886] Enhance the ability of Microsoft SCOM monitoring through SNMP Created: 08/Jul/15  Updated: 06/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.8.1
Fix Version/s: None

Type: Improvement Priority: Normal
Reporter: Vijitha Ekanayake Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Test cases added: Yes

 Description   

SCOM can only have a restricted number of discoveries configured, thus they cannot add multiple SNMP entry points for a single server to SCOM. The WSO2 SNMP entry point however only exposes WSO2 specific OIDs and NOT the JVM OIDs. Hence, they cannot monitor WSO2 sufficiently as is required by their customer.

To overcome this problem we have to enhanced the SNMPAgent class to load the JVMManagement OIDs at startup. This means that the SNMP entry point by WSO2 now exposes both WSO2 OIDs as well as JVM OIDs.

https://server.oosnmp.net/dist/release/org/snmp4j/snmp4j-agent-jmx/2.0.0/snmp4j-agent-jmx-2.0.0.jar can be used as the dependency.

Following code may helpful.
// Add this field to the SNMPAgent class
private JvmManagementMib jvmManagementMIB;
// Add the following lines in "registerSnmpMIBs()" below the super.registerSnmpMibs() call:
try

{ jvmManagementMIB = new JvmManagementMibInst(super.agent.getNotificationOriginator()); jvmManagementMIB.registerMOs(server, null); }

catch (DuplicateRegistrationException ex)

{ logger.error("Unable to register JVM-MANAGEMENT-MIB", ex); }




[ESBJAVA-3716] Service url for the entitlement mediator should be able to set dynamically Created: 26/May/15  Updated: 25/Jul/15

Status: Open
Project: WSO2 ESB
Component/s: Mediators
Affects Version/s: 4.8.1
Fix Version/s: None

Type: Improvement Priority: Normal
Reporter: Asanka Vithanage Assignee: madhuranga bandara
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Currently we are hard coding the service url for the entitlement mediator[1][2]. But there can be situations where users need to set service url in dynamic manner.So we should give the ability to set service url dynamically.
May be we can implement server url to be read from registry

[1] public void build(OMElement elem) {
getList().clear();
OMAttribute attRemoteServiceUri = elem.getAttribute(PROP_NAME_SERVICE_EPR);

[2]https://docs.wso2.com/display/ESB481/Entitlement+Mediator#EntitlementMediator-Example






[ESBJAVA-3668] Issue Processing JSON with Embedded XML Created: 04/May/15  Updated: 25/Jul/15

Status: Open
Project: WSO2 ESB
Component/s: Logging and Tracing
Affects Version/s: 4.9.0 - M7
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Chanaka Fernando Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

SUMMARY
=======
I need to convert a JSON payload containing embedded XHTML to XML.

I can get this to work, but addding a <log> mediator to the sequence causes the output to be incorrect.

I want to know if there is a recommended and better way to handle this situation, or what can be done to improve the reliability of my solution.

DESCRIPTION
===========
A simplified example of the source payload is:
{
"type":"article",
"revision":"revision1",
"id":"id1",
"wordCount": "33",
"body":

{"text":"<!DOCTYPE html><html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\" lang=\"en\"><head><meta charset=\"UTF-8\"/><title>Some Text</title></head><body><p><a href=\"http://www.example.com\" title=\"Example Company\">Example Company Ltd.</a>said it will report earnings late Friday. The stock slumped.</p></body></html>"}

,
"tags":

{"tag1": "tag1_value"}

}

An expected result is:

<xml>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8"/>
<title>Some Text</title>
</head>
<body>
<p>
<a href="http://www.example.com" title="Example Company">Example Company Ltd.</a>said it will report earnings late Friday. The stock slumped.</p>
</body>
</html>
</xml>

I have been able to get this to work by using a custom mediator:
o that converts the embedded XML string to an OMElement
o and attaches it as a child of jsonObject in the built message
and then using an XSLT mediator to generate the XML.

The results look like:
$ curl -H 'Content-Type: application/json' -H 'Accept: application/xml' -d @payload.json http://localhost:8280/services/ExampleProxy.ExampleProxyHttpEndpoint

<xml>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8"/>
<title>Some Text</title>
</head>
<body>
<html xml:lang="en" lang="en">
<head>
<meta charset="UTF-8"/>
<title>Some Text</title>
</head>
<body>
<p>
<a href="http://www.example.com" title="Example Company">Example Company Ltd.</a>said it will report earnings late Friday. The stock slumped.</p>
</body>
</html>
</body>
</html>
</xml>

However, if I make a single change to the sequence:
$ diff ExampleProxy.xml ExampleProxy2.xml
3c3
< name="ExampleProxy"

> name="ExampleProxy2"
13a14
> <log level="full"/>

The output becomes:
$ curl -H 'Content-Type: application/json' -H 'Accept: application/xml' -d @payload.json http://localhost:8280/services/ExampleProxy2.ExampleProxy2HttpEndpoint
<xml>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8"/>
<title>Some Text</title>
</head>
<body/>
</html>
</xml>

i.e., it is missing the html body content.






[ESBJAVA-3633] No user value in rampart config error , when implementing Scatter-Gather EIP Created: 01/Apr/15  Updated: 06/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: Core Engine, Mediators, Properties Management
Affects Version/s: 4.8.1
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Vernon Osborne Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 8.1 , Latest versions of AS and DSS


Attachments: File Pepkor_Integration.7z    
Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Comments   
Comment by Vernon Osborne [ 01/Apr/15 ]

Steps to reproduce :
Create MySql DB with scripts
Upload BE Services to DSS(offset = 2) + AS(offset = 1)
Upload ESB Product Search CarbonApp
Apply UT scenario 1 , with admin , admin.
Test in soap.

Error message :
TID: [0] [ESB] [2015-04-01 11:42:17,372] WARN

{org.apache.synapse.FaultHandler} - ERROR_DETAIL : org.apache.synapse.SynapseException: Unexpected error during sending message out : : : : Caused by: org.apache.axis2.AxisFault: No user value in the rampart configuration policy at org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:76) at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340) at org.apache.axis2.engine.Phase.invoke(Phase.java:313) at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:261) at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:426) at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.send(DynamicAxisOperation.java:185) at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.executeImpl(DynamicAxisOperation.java:167) at org.apache.axis2.client.OperationClient.execute(OperationClient.java:149) at org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(Axis2FlexibleMEPClient.java:482) at org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java:59) ... 12 more Caused by: org.apache.rampart.RampartException: No user value in the rampart configuration policy at org.apache.rampart.builder.BindingBuilder.addUsernameToken(BindingBuilder.java:212) at org.apache.rampart.builder.TransportBindingBuilder.build(TransportBindingBuilder.java:95) at org.apache.rampart.MessageBuilder.build(MessageBuilder.java:140) at org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:65) ... 21 more {org.apache.synapse.FaultHandler}
Comment by Vernon Osborne [ 01/Apr/15 ]

Also see http://stackoverflow.com/questions/29387898/how-to-persist-rampart-data-when-service-chaining-in-wso2-esb





[ESBJAVA-3720] Carbon Applications folders not cleaned up correctly Created: 27/May/15  Updated: 09/Jul/15

Status: Open
Project: WSO2 ESB
Component/s: Carbon Applications
Affects Version/s: 4.8.1
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Loic Juillerat Assignee: Nadeeshaan Gunasinghe
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows x64


Severity: Minor
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

The cleanup of Carbon Applications in the work directory is done during shutdown. If the server is crashing, the cleanup is not done and after startup, all existing folders are not removed until a new clean shutdown will be performed.

The cleanup job is so not done at the right place (better at startup).



 Comments   
Comment by Loic Juillerat [ 28/May/15 ]

Deployment of corrupted CAPP (unresolved custom mediators, synthax errors in XSLT local entries, ...) create duplicate folders into work





[ESBJAVA-3713] custom LoadBalanceMembershipHandler causes Caused by: java.lang.ClassNotFoundException: org.apache.synapse.core.LoadBalanceMembershipHandler Created: 25/May/15  Updated: 06/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: Endpoints Management
Affects Version/s: 4.8.1
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Jose Luis Pedrosa Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Hi all
if you implement a synapse custom LoadBalanceMembershipHandler,
causes



 Comments   
Comment by Jose Luis Pedrosa [ 25/May/15 ]

Sorry, I hit enter by accident,

This is the proper description:

if you implement a synapse custom LoadBalanceMembershipHandler,
causes java.lang.ClassNotFoundException: org.apache.synapse.core.LoadBalanceMembershipHandler when used in dynamicLoadbalance

<syn:endpoint  xmlns:syn="http://ws.apache.org/ns/synapse" syn:name="LocalHostDynamicEndpoint">
   <syn:dynamicLoadbalance  syn:failover="true" syn:algorithm="org.apache.synapse.endpoints.algorithms.RoundRobin">
		 <syn:membershipHandler class=".....HttpLoadBalanceMembershipHandler" >
			<syn:property name="CheckURL" value="/check.txt"/>
			<syn:property name="HttpPort" value="80"/>
			<syn:property name="EndPoints" value="127.0.0.1,127.0.0.1"/>
		</syn:membershipHandler>
	</syn:dynamicLoadbalance>
</syn:endpoint> 

I created a class HttpLoadBalanceMembershipHandler that implements: LoadBalanceMembershipHandler, then no matter where I drop my jar,
the HttpLoadBalanceMembershipHandler class is read correctly (I'm positive about that because if I put a incorrect class name, then it's not loaded and I see the incorrect class name in the error).

This is the stack trace:

java.lang.NoClassDefFoundError: org/apache/synapse/core/LoadBalanceMembershipHandler
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
        at org.wso2.carbon.server.ChildFirstURLClassLoader.loadClass(ChildFirstURLClassLoader.java:62)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
        at org.eclipse.osgi.internal.loader.SystemBundleLoader.findLocalClass(SystemBundleLoader.java:117)
        at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:35)
        at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:471)
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
        at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:190)
        at org.apache.synapse.config.xml.endpoints.DynamicLoadbalanceEndpointFactory.createEndpoint(DynamicLoadbalanceEndpointFactory.java:136)
        at org.apache.synapse.config.xml.endpoints.EndpointFactory.createEndpointWithName(EndpointFactory.java:143)
        at org.apache.synapse.config.xml.endpoints.EndpointFactory.getEndpointFromElement(EndpointFactory.java:80)
        at org.apache.synapse.deployers.EndpointDeployer.deploySynapseArtifact(EndpointDeployer.java:53)
        at org.wso2.carbon.endpoint.EndpointDeployer.deploySynapseArtifact(EndpointDeployer.java:36)
        at org.apache.synapse.deployers.AbstractSynapseArtifactDeployer.deploy(AbstractSynapseArtifactDeployer.java:192)
        at org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136)
        at org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:807)
        at org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:144)
        at org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:377)
        at org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:254)
        at org.apache.axis2.deployment.RepositoryListener.startListener(RepositoryListener.java:371)
        at org.apache.axis2.deployment.scheduler.SchedulerTask.checkRepository(SchedulerTask.java:59)
        at org.apache.axis2.deployment.scheduler.SchedulerTask.run(SchedulerTask.java:67)
        at org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.runAxisDeployment(CarbonDeploymentSchedulerTask.java:79)
        at org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.run(CarbonDeploymentSchedulerTask.java:124)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.ClassNotFoundException: org.apache.synapse.core.LoadBalanceMembershipHandler

Obviously the class org.apache.synapse.core.LoadBalanceMembershipHandler is in the jar synapse-core_2.1.2.wso2v4.jar, provided by wso2.

By the way there's something strange in synapse sources, I had to put two two namespaces to satisfy this (DynamicLoadbalanceEndpointFactory.java):
String clazz = eventHandler.getAttributeValue(new QName(XMLConfigConstants.NULL_NAMESPACE, "class")).trim();

Anyway, As i mentioned before, I'm sure my class is read correctly from the XML and loaded because if I put a non existing class I get a completely different error, like:

<?xml version="1.0" encoding="UTF-8"?>
<syn:endpoint  xmlns:syn="http://ws.apache.org/ns/synapse" syn:name="LocalHostDynamicEndpoint">
   <syn:dynamicLoadbalance  syn:failover="true" syn:algorithm="org.apache.synapse.endpoints.algorithms.RoundRobin">
		 <syn:membershipHandler class="this.name.space.does.not.exist.MyClass" >
			<syn:property name="CheckURL" value="/check.txt"/>
			<syn:property name="HttpPort" value="80"/>
			<syn:property name="EndPoints" value="127.0.0.1,127.0.0.1"/>
		</syn:membershipHandler>
	</syn:dynamicLoadbalance>
</syn:endpoint> 

[2015-05-25 14:46:15,309] ERROR - DynamicLoadbalanceEndpointFactory Could not instantiate LoadBalanceMembershipHandler implementation this.name.space.does.not.exist.MyClass
java.lang.ClassNotFoundException: this.name.space.does.not.exist.MyClass
        at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501)
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
        at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:190)
        at org.apache.synapse.config.xml.endpoints.DynamicLoadbalanceEndpointFactory.createEndpoint(DynamicLoadbalanceEndpointFactory.java:136)

Thanks in advance.

JL





[ESBJAVA-3699] support dynamic xpath expression generation in ESB Created: 19/May/15  Updated: 06/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Priority: Normal
Reporter: Rajith Vitharana Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Current ESB doesn't support dynamic xpath expression generation.
Requirement is to generate the xpath expression at runtime

example would be as follows

<property name="sampleCode4"
expression="//sfobject[en_US='$ctx:sample']/externalCode/text()"/>



 Comments   
Comment by Kesavan Yogarajah [ 21/Mar/16 ]

We can dynamically evaluate the xpath expression as follows. It worked with ESB 4.9.0.

curl -X POST http://localhost:8280/services/test -H "Content-Type:application/json" -d '

{ "param":"elt3" }

'

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
name="test"
transports="http,https"
statistics="disable"
trace="disable"
startOnLoad="true">
<target>
<inSequence>
<property name="param" expression="json-eval($.param)"/>
<payloadFactory media-type="xml">
<format>
<urn:elts xmlns:urn="wso2.esb.test">
<urn:elt1>a</urn:elt1>
<urn:elt2>b</urn:elt2>
<urn:elt3>c</urn:elt3>
</urn:elts>
</format>
<args/>
</payloadFactory>
<log level="custom">
<property xmlns:urn="wso2.esb.test"
name="paramValue"
expression="evaluate(fn:concat("//urn:",get-property('param')))"/>
</log>
<respond/>
</inSequence>
<outSequence>
<log/>
<send/>
</outSequence>
</target>
<description/>
</proxy>





[ESBJAVA-3693] ClassCastException when combining inline HeaderMediator with WS-Security Created: 15/May/15  Updated: 25/Jul/15

Status: Open
Project: WSO2 ESB
Component/s: Mediators
Affects Version/s: 4.8.1
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Stijn Arnauts Assignee: madhuranga bandara
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Zip Archive BugTestCase.zip    
Severity: Critical
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Test cases added: Yes

 Description   

Adding a custom inline SOAP header with the HeaderMediator results in the following exception when the response is send, whenever WS-Security is enabled:

[2015-05-15 11:28:36,390] ERROR - Axis2Sender Accept-Encoding:gzip,deflate,Connection:Keep-Alive,Content-Length:2798,Content-Type:text/xml;charset=UTF-8,Host:localhost.localdomain:8280,SOAPAction:"urn:mediate",User-Agent:Apache-HttpClient/4.1.1 (java 1.5),<?xml version="1.0" encoding="utf-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header><test>TEST</test></soapenv:Header><soapenv:Body xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="id-48"></soapenv:Body></soapenv:Envelope> Unexpected error sending message back
org.apache.axis2.AxisFault: Error in extracting message properties
	at org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:76)
	at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
	at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
	at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:261)
	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:426)
	at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:163)
	at org.apache.synapse.mediators.builtin.RespondMediator.mediate(RespondMediator.java:23)
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:77)
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47)
	at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:131)
	at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:166)
	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
	at org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:411)
	at org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:183)
	at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.rampart.RampartException: Error in extracting message properties
	at org.apache.rampart.RampartMessageData.<init>(RampartMessageData.java:414)
	at org.apache.rampart.MessageBuilder.build(MessageBuilder.java:61)
	at org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:65)
	... 17 more
Caused by: org.apache.ws.security.WSSecurityException: Error in converting SOAP Envelope to Document; nested exception is: 
	java.lang.ClassCastException: org.apache.axiom.om.impl.llom.OMElementImpl cannot be cast to org.apache.axiom.soap.SOAPHeaderBlock
	at org.apache.rampart.util.Axis2Util.getDocumentFromSOAPEnvelope(Axis2Util.java:149)
	at org.apache.rampart.RampartMessageData.<init>(RampartMessageData.java:268)
	... 19 more
Caused by: java.lang.ClassCastException: org.apache.axiom.om.impl.llom.OMElementImpl cannot be cast to org.apache.axiom.soap.SOAPHeaderBlock
	at org.apache.rampart.util.Axis2Util.getDocumentFromSOAPEnvelope(Axis2Util.java:99)
	... 20 more

TESTCASE: A testcase is included as an attachment. To run this testcase, first deploy the provided Proxy and secure it using scenario 2 with the default carbon truststore. Next, open the provided SoapUI project and point the security to the same keystore file. Finally, call the proxy and observe that the server does not respond. In the logs, you will see that the exception described above occured.

WORKAROUND: The exception doesn't occur for literal headers, only for inline headers. So as a temporary workaround, you can avoid the error by changing:

<header scope="default" description="AddHeader">
  <test xmlns="https://mynamespace.com">TEST</test>
</header>

to:

<header xmlns:tst="https://mynamespace.com" name="tst:test" scope="default" value="TEST"/>

If you need a more complex header than the literal header demonstrated above, you can use the EnrichMediator to add additional child elements without triggering the bug.






[ESBJAVA-3779] Portal/Front end Application getting 404 randomly Created: 12/Jun/15  Updated: 06/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: Proxy Services Management
Affects Version/s: 4.8.1
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Faisal Shaik Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: ESB
Remaining Estimate: 3 hours
Time Spent: Not Specified
Original Estimate: 3 hours
Environment:

Solaries.ajax calls


Attachments: PNG File 404 error.png    
Severity: Blocker
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Affects Docs:
Yes

 Description   

Hi,

We have implemented wso2 in our existing system we replace to alsb with wso2 .But We are getting issues with Content-Type like Content-Type is empty or Content-Type is null.

In front end we are getting ERROR -404 -Not Found

We are not having any clue regarding this why we are getting this issue.

We are manipulated service url and using main sequence as entry point .



 Comments   
Comment by Isuru Udana Loku Narangoda [ 12/Jun/15 ]

Hi,

Question is not clear to us. Could you explain more on what's the bug you have encountered ?

Comment by Faisal Shaik [ 12/Jun/15 ]

If we run existing front end application with alsb its working fine.
Same time if we replace with wso2 404 errors are starting.

Some malformed xml requests are coming to wso2 ,so wso2 not responding and its not giving any response back,because of that we are getting 404 issue
We enabled application/soap+xml content-type header in axis2 file.

after that we are getting below errors randomly

Transport level information does not match with SOAP Message namespace URI

ERROR | ServerWorker | Error while building message for REST_URL request

above errors are coming frequently.

some more errors are.

2015-06-11 07:37:46 | ERROR | AnonymousListMediator | Error while building message
2015-06-11 08:12:03 | ERROR | __SynapseService | Error while building message

A

Comment by Chanaka Fernando [ 25/Jul/15 ]

Can you attach sample configuration and the response message you are getting from the back end such that we can get a proper understanding about the root cause?





[ESBJAVA-3825] When undeploying a CAR file, the artifacts does not remove if the artifact name and the configuration names are different Created: 19/Jun/15  Updated: 24/Aug/15

Status: In Progress
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.8.1
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Nipuni Perera Assignee: Shakila Sasikaran
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

When the name of an artifact (in artifact.xml) differs from the name in the physical artifact then the undeployment fails yet there is no error thrown.

Steps to reproduce the issue:

1. Create a car file with multiple artifacts for ESB (eg: proxy service, endpoint)
2. Rename a one artifact in the actual configuration (without changing the name in artifact.xml or artifacts.xml)
3. Deploy the artifact in the ESB. All the artifacts will be deployed properly.
4. Delete the CAR file
5. The renamed artifact will not be removed.
6. Artifact will be removed if the server restarts



 Comments   
Comment by Nipuni Perera [ 19/Jun/15 ]

Hi,

Assume the renamed artifact is an endpoint, if there are no endpoint returned for the given name (line 92 of [1]), there is a debug log as [2]. But still the endpoint is listed in the UI and will get removed in a server startup. One suggestion is to add a proper WARN message. (Renaming an artifact manually is not recommended, hence please validate whether the usecase is useful, before a fix)

[1] https://svn.wso2.com/wso2/custom/projects/projects/carbon/turing/platform/trunk/dependencies/synapse/2.1.2-wso2v4/modules/core/src/main/java/org/apache/synapse/deployers/EndpointDeployer.java
[2] log.debug("Endpoint " + artifactName + " has already been undeployed");

Thanks,
Nipuni

Comment by Shakila Sasikaran [ 31/Jul/15 ]

Please find the PR [1].
[1] https://github.com/wso2/carbon-mediation/pull/405





[ESBJAVA-3756] Extraction failure of child elements without sub elements in xml payload Created: 08/Jun/15  Updated: 25/Jul/15

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.8.1
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Suhan Dharmasuriya Assignee: shafreen anfar
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Test cases added: Yes

 Description   

Selecting all children of the parent node fails to extract tag information when there are no sub elements present.

In scenario 1 below, the extraction of child elements with no sub elements fails only leaving field value without any tags.
In scenario 2 the child elements successfully extracted with tags when there are sub elements.

Test Proxy

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse" name="PayloadFactoryHeaderTest"
transports="http" startOnLoad="true" trace="disable">
   <target>
      <inSequence>
         <loopback />
      </inSequence>
      <outSequence>
         <payloadFactory media-type="xml">
            <format>
               <theData xmlns="http://some.namespace">
                  <theHeader>$1</theHeader>
                  <theBody>$2</theBody>
               </theData>
            </format>
            <args>
               <arg evaluator="xml" expression="$header/*" />
               <arg evaluator="xml" expression="$body/*" />
            </args>
         </payloadFactory>
         <send />
      </outSequence>
   </target>
</proxy>

Scenario 1
SOAP Request

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
   <hd:inHeaderA xmlns:hd="http://some.namespace">InputHeaderValueA</hd:inHeaderA>
   <hd:inHeaderB xmlns:hd="http://some.namespace">InputHeaderValueB</hd:inHeaderB>
</soap:Header>
<soap:Body>
   <input1 xmlns="http://some.namespace">inputData1</input1>
   <input2 xmlns="http://some.namespace">inputData2</input2>
</soap:Body>
</soap:Envelope>

Response

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Header>
      <hd:inHeaderA xmlns:hd="http://some.namespace">InputHeaderValueA</hd:inHeaderA>
      <hd:inHeaderB xmlns:hd="http://some.namespace">InputHeaderValueB</hd:inHeaderB>
   </soap:Header>
   <soap:Body>
      <theData xmlns="http://some.namespace">
         <theHeader>InputHeaderValueAInputHeaderValueB</theHeader>
         <theBody>inputData1inputData2</theBody>
      </theData>
   </soap:Body>
</soap:Envelope>

Scenario 2

SOAP Request
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Header>
      <hd:inHeaderA xmlns:hd="http://some.namespace">
         <sub>InputHeaderValueA</sub>
      </hd:inHeaderA>
      <hd:inHeaderB xmlns:hd="http://some.namespace">
         <sub>InputHeaderValueB</sub>
      </hd:inHeaderB>
   </soap:Header>
   <soap:Body>
      <input xmlns="http://some.namespace">
         <sub>inputData</sub>
      </input>
   </soap:Body>
</soap:Envelope>

Response

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Header>
      <hd:inHeaderA xmlns:hd="http://some.namespace">
         <sub>InputHeaderValueA</sub>
      </hd:inHeaderA>
      <hd:inHeaderB xmlns:hd="http://some.namespace">
         <sub>InputHeaderValueB</sub>
      </hd:inHeaderB>
   </soap:Header>
   <soap:Body>
      <theData xmlns="http://some.namespace">
         <theHeader>
            <hd:inHeaderA xmlns:hd="http://some.namespace">
               <sub>InputHeaderValueA</sub>
            </hd:inHeaderA>
            <hd:inHeaderB xmlns:hd="http://some.namespace">
               <sub>InputHeaderValueB</sub>
            </hd:inHeaderB>
         </theHeader>
         <theBody>
            <input>
               <sub>inputData</sub>
            </input>
         </theBody>
      </theData>
   </soap:Body>
</soap:Envelope>

This inconsistent behaviour should be fixed.



 Comments   
Comment by Suhan Dharmasuriya [ 08/Jun/15 ]

Workaround

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
       name="PayloadFactoryHeaderTest"
       transports="https,http"
       statistics="disable"
       trace="disable"
       startOnLoad="true">
   <target>
      <inSequence>
         <loopback/>
      </inSequence>
      <outSequence>
         <log level="full"/>
         <payloadFactory media-type="xml">
            <format>
               <theData xmlns="http://some.namespace">
                  <theHeader>$1</theHeader>
                  <theBody>$2</theBody>
               </theData>
            </format>
            <args>
               <arg evaluator="xml" expression="$header"/>
               <arg evaluator="xml" expression="$body/*"/>
            </args>
         </payloadFactory>
         <enrich>
            <source xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
                    xmlns:the="http://some.namespace"
                    clone="true"
                    xpath="//the:theHeader/soap:Header/*"/>
            <target xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
                    xmlns:the="http://some.namespace"
                    xpath="//the:theHeader/soap:Header/."/>
         </enrich>
         <log level="full"/>
         <send/>
      </outSequence>
   </target>
   <description/>
</proxy>




[ESBJAVA-3835] Message tracing publisher sets fault "payload_status" Created: 09/Jun/15  Updated: 04/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.8.1
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Vijayaratha Vijayasingam Assignee: Isuru Udana Loku Narangoda
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Test cases added: Yes

 Description   

When there is a soap error occurs at ESB due to wrong endpoint configuration,
ESB generates '500' http status error.
But, Message tracer publishes the status as "SUCCESS".(wrong value!)

If we explicitly set the status code to 500, then the payload status is recorded as 'fault'.
Sample proxy;

<proxy xmlns="http://ws.apache.org/ns/synapse"
name="HorribleFaultProxy1"
transports="https,http"
statistics="disable"
trace="disable"
startOnLoad="true">
<target>
<inSequence>
<log>
<property name="HorribleFaultProxy" value=" === In HorribleFault Proxy ==="/>
</log>
<send>
<endpoint>
<address uri="http://abc.com"/>
</endpoint>
</send>
</inSequence>
<outSequence/>
<faultSequence>
<log>
<property name="HorribleFaultProxy" value=" === In fault handler==="/>
</log>
<makefault version="soap11">
<code xmlns:soap11Env="http://schemas.xmlsoap.org/soap/envelope/"
value="soap11Env:Server"/>
<reason value="Deliberate horrible fault here"/>
<detail>DeliberateException</detail>
</makefault>
<send/>
</faultSequence>
</target>
<description/>
</proxy>



 Comments   
Comment by Gihan Anuruddha [ 22/Jun/15 ]

In the Message tracer level, we are using below code snippet to get status. So it seems to be in a wrong endpoint configuration scenario, ESB sent those responses through an OUT_FLOW not in an OUT_FAULT_FLOW

private String getStatus(MessageContext messageContext) {
String status = MessageTracerConstants.STATUS_SUCCESS;
if (MessageContext.OUT_FLOW == messageContext.getFLOW()) {
Object httpSC = messageContext.getProperty(HTTP_SC);
if (httpSC != null) {
int statusCode = Integer.parseInt(httpSC.toString());
if (statusCode == 200 || statusCode == 202)

{ status = MessageTracerConstants.STATUS_SUCCESS; }

else

{ status = MessageTracerConstants.STATUS_FAULT; }

} else

{ status = MessageTracerConstants.STATUS_SUCCESS; }

} else if (MessageContext.OUT_FAULT_FLOW == messageContext.getFLOW())

{ status = MessageTracerConstants.STATUS_FAULT; }

return status;
}

Comment by Isuru Udana Loku Narangoda [ 22/Jun/15 ]

Can you please explain what is meant by "wrong endpoint configuration" ?

Comment by Vijayaratha Vijayasingam [ 22/Jun/15 ]

I provided sample proxy conf. I do not see any wrong there.

Comment by Isuru Udana Loku Narangoda [ 22/Jun/15 ]

What I asked was to clarify what is meant by "wrong endpoint configuration"





[ESBJAVA-3528] Log the user information when changing vault passwords from Secure Vault Tool under ESB admin UI Created: 05/Feb/15  Updated: 06/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Normal
Reporter: Inosh Goonewardena Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: No

 Description   

Log the user information when changing vault passwords from Secure Vault Tool under ESB admin UI






[ESBJAVA-3517] Retrive OM element as parameter in template function always evaluate to String Created: 30/Jan/15  Updated: 06/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: dushan abeyruwan Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

please refer the highlighted section

expression="$func:message1/ser:request/xsd:symbol" it always prints null because, evaluation at getEvaluatedParamValue convert property to string regardless of property element type

if '$func:message1' assigned back to another variable with OM type started to evaulate correctly

<proxy xmlns="http://ws.apache.org/ns/synapse"
       name="Moo"
       transports="https,http"
       statistics="disable"
       trace="disable"
       startOnLoad="true">
   <target>
      <inSequence>
         <enrich>
            <source type="body" clone="true"/>
            <target type="property" property="ORGINAL_MSG"/>
         </enrich>
         <property name="api.common.errorEntries"
                   expression="get-property('ORGINAL_MSG')"
                   type="OM"/>
         <clone>
            <target>
               <sequence>
                  <call-template target="HelloWorld_Logger">
                     <with-param name="message" value="Bonjour tout le monde!!!!!!"/>
                     <with-param name="message1" value="{$ctx:api.common.errorEntries}"/>
                  </call-template>
               </sequence>
            </target>
         </clone>
         <drop/>
      </inSequence>
   </target>
   <description/>
</proxy>

<template xmlns="http://ws.apache.org/ns/synapse" name="HelloWorld_Logger">
   <parameter name="message"></parameter>
   <parameter name="message1"></parameter>
   <sequence>
      <log level="custom">
         <property xmlns:ns2="http://org.apache.synapse/xsd" xmlns:ns="http://org.apache.synapse/xsd" name="CLONE-INNNNN" expression="$func:message1"></property>
      </log>
      <property xmlns:ns2="http://org.apache.synapse/xsd" xmlns:ns="http://org.apache.synapse/xsd" name="templateMessage" expression="$func:message1" type="OM"></property>
      <log>
         <property xmlns:xsd="http://services.samples/xsd" xmlns:ns2="http://org.apache.synapse/xsd" xmlns:ns="http://org.apache.synapse/xsd" xmlns:ser="http://services.samples" name="message##########" expression="$func:message1/ser:request/xsd:symbol"></property>
      </log>
   </sequence>
</template>

Please refer the configuration

    private Object getEvaluatedParamValue(MessageContext synCtx, String parameter, Value expression) {
        if (expression != null) {
            if (expression.getExpression() != null) {
                if(expression.hasExprTypeKey()){
                if(expression.hasPropertyEvaluateExpr()){
                //TODO:evalute the string expression get the value
                //String evaluatedPath ="{//m0:getQuote/m0:request}";
                return expression.evalutePropertyExpression(synCtx);
                }
                    return expression.getExpression();
                } else {
                    return expression.evaluateValue(synCtx);
                }

            } else if (expression.getKeyValue() != null) {
                return expression.evaluateValue(synCtx);
            }
        }
        return null;
    }



public String evaluateValue(MessageContext synCtx) {

        if (keyValue != null) {

         return keyValue;

        } else if (expression != null) {

            //if dynamic key return evaluated value

            return expression.stringValueOf(synCtx);

        } else {

            handleException("Can not evaluate the key: " +

                            "key should be static or dynamic key");

            return null;

        }

    }





[ESBJAVA-3576] wss4j_1.5.11.wso2v6.jar has Embed-Dependency of bcprov-jdk15-132.jar Created: 20/Feb/15  Updated: 25/Jul/15

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Normal
Reporter: Balaji Sengeni Assignee: madhuranga bandara
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Hi Team,

I have noticed that wss4j_1.5.11.wso2v6.jar has Embed-Dependency of bcprov-jdk15-132.jar also export the org.bouncycastle.*, can that dependency be provided at runtime so that it is flexible to upgrade the bouncycastle version if required for any solution.

Kind Regards,
Balaji






[ESBJAVA-3491] JSON <-> XML conversion; handling null vs empty string Created: 13/Jan/15  Updated: 06/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Normal
Reporter: Ishan Jayawardena Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Test cases added: Yes

 Description   

Currently, ESB treats both null and empty strings in JSON values the same way. Look beblow

{"test":null}
{"test": ""}

both get converted into

<test/>

But the null value must be converted into XML Schema defined null value mentioned here [1]. ie into,

<test xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true" ></test>

[1] http://www.w3.org/TR/xmlschema-1/#xsi_nil






[ESBJAVA-3403] Remove ALL hardcoded passwords from configs and systematically use secure vault for all sensitive data Created: 27/Oct/14  Updated: 06/Aug/16

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Normal
Reporter: Ishara Cooray Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Advanced
Test cases added: Yes

 Description   

We want to remove ALL hardcoded passwords from configs and systematically use secure vault for all sensitive data, plus endpoints must be manageable as separate entities. This must work for all transports. Same applies to database or ldap connections for example. We need to find a generic way to insert variables into an endpoint definition.






[ESBJAVA-5100] Error when proxy service try to failover with loadbalance endpoint. Created: 22/May/17  Updated: 23/May/17

Status: In Progress
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Nuwan Wimalasekara Assignee: Nuwan Wimalasekara
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

bellow error can be observed when failover happens in loadbalance endpoint for soap messages since message stream is consumed, It failed to send the message again.

TID: [-1] [] [2017-05-10 08:59:26,260] ERROR

{org.apache.synapse.core.axis2.Axis2Sender} - Unexpected error during sending message out {org.apache.synapse.core.axis2.Axis2Sender}

org.apache.axis2.AxisFault: Trying to write END_DOCUMENT when document has no root (ie. trying to output empty document).
at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:78)
at org.apache.synapse.transport.passthru.PassThroughHttpSender.sendRequestContent(PassThroughHttpSender.java:388)
at org.apache.synapse.transport.passthru.PassThroughHttpSender.invoke(PassThroughHttpSender.java:259)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.send(DynamicAxisOperation.java:185)
at org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.executeImpl(DynamicAxisOperation.java:167)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:149)
at org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(Axis2FlexibleMEPClient.java:560)
at org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java:79)
at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:511)
at org.apache.synapse.endpoints.AbstractEndpoint.send(AbstractEndpoint.java:372)
at org.apache.synapse.endpoints.HTTPEndpoint.send(HTTPEndpoint.java:85)
at org.apache.synapse.endpoints.LoadbalanceEndpoint.send(LoadbalanceEndpoint.java:159)
at org.apache.synapse.endpoints.LoadbalanceEndpoint.onChildEndpointFail(LoadbalanceEndpoint.java:279)
at org.apache.synapse.endpoints.AbstractEndpoint.invokeNextFaultHandler(AbstractEndpoint.java:678)
at org.apache.synapse.endpoints.AbstractEndpoint.onFault(AbstractEndpoint.java:515)
at org.apache.synapse.endpoints.HTTPEndpoint.onFault(HTTPEndpoint.java:66)
at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:54)
at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:188)
at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:88)
at java.util.TimerThread.mainLoop(Timer.java:555)
at java.util.TimerThread.run(Timer.java:505)
Caused by: javax.xml.stream.XMLStreamException: Trying to write END_DOCUMENT when document has no root (ie. trying to output empty document).
at com.ctc.wstx.sw.BaseStreamWriter.throwOutputError(BaseStreamWriter.java:1522)
at com.ctc.wstx.sw.BaseStreamWriter.reportNwfStructure(BaseStreamWriter.java:1551)
at com.ctc.wstx.sw.BaseStreamWriter._finishDocument(BaseStreamWriter.java:1377)
at com.ctc.wstx.sw.BaseStreamWriter.close(BaseStreamWriter.java:247)
at org.apache.axiom.om.impl.MTOMXMLStreamWriter.close(MTOMXMLStreamWriter.java:188)
at org.apache.axiom.om.impl.llom.OMSerializableImpl.serializeAndConsume(OMSerializableImpl.java:197)
at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:74)
... 21 more



 Comments   
Comment by Nuwan Wimalasekara [ 23/May/17 ]

setting build.message.on.failover.enable to true in synapse.properties file will always build the message before sending

synapse.properties

build.message.on.failover.enable=true

Fixed with PR https://github.com/wso2/wso2-synapse/pull/745





[ESBJAVA-5091] Empty Optional Objects on Datamapper Created: 02/May/17  Updated: 02/May/17

Status: Open
Project: WSO2 ESB
Component/s: Mediators
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Normal
Reporter: Randika Perera Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Data Mapper is not removing the optional elements from the output mapping. Suppose we are doing xml to json transformation using Data Mapper.
Consider the below input and the output.

scenario 1

input

<input>
<id>1</id>
<repeatingValues>
<value>1</value>
</repeatingValues>
<repeatingValues>
<value>3</value>
</repeatingValues>
<singleValue>
<value>4</value>
</singleValue>
</input>

output

{
"id": "1",
"repeatingValues": [

{ "value": "1" }

,

{ "value": "3" }

],
"singleValue":

{ "value": "4" }

}

scenario 2

input

<input>
<id>2</id>
</input>

output

{
"id": "2",
"repeatingValues": [],
"singleValue": {}
}

According to the above, the empty elements are coming in the scenario 2.






[ESBJAVA-5079] org.mozilla.javascript.Scriptable cannot be found by json-schema-validator-all_2.2.6.wso2v1 when using the Validate Mediator Created: 17/Apr/17  Updated: 17/Apr/17

Status: Open
Project: WSO2 ESB
Component/s: Mediators
Affects Version/s: 5.0.0
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Sumedha Kodithuwakku Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

While testing a json validation scenario on ESB 5.0.0 got the error at [1]. And as per the error json-schema-validator-all_2.2.6.wso2v1 seems unable to find the class org.mozilla.javascript.Scriptable,

When check the code at com.github.fge.jsonschema.core.keyword.syntax.checkers.common.PatternSyntaxChecker.checkValue(PatternSyntaxChecker.java:62) [2] it seems it is referring the RhinoHelper.java at [3] , and there the org.mozilla.javascript.Scriptable is required to be imported.

This can be fixed by adding the import package org.mozilla.javascript.* in to the pom.xml of the json-schema-validator-all_2.2.6.

[1]
com.google.common.util.concurrent.ExecutionError: com.google.common.util.concurrent.ExecutionError: java.lang.NoClassDefFoundError: org/mozilla/javascript/Scriptable
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2197)
at com.google.common.cache.LocalCache.get(LocalCache.java:3932)
at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3936)
at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4806)
at com.github.fge.jsonschema.core.processing.CachingProcessor.process(CachingProcessor.java:109)
at com.github.fge.jsonschema.processors.validation.InstanceValidator.process(InstanceValidator.java:110)
at com.github.fge.jsonschema.processors.validation.ValidationProcessor.process(ValidationProcessor.java:56)
at com.github.fge.jsonschema.processors.validation.ValidationProcessor.process(ValidationProcessor.java:34)
at com.github.fge.jsonschema.core.processing.ProcessingResult.of(ProcessingResult.java:79)
at com.github.fge.jsonschema.main.JsonSchema.doValidate(JsonSchema.java:76)
at com.github.fge.jsonschema.main.JsonSchema.validate(JsonSchema.java:109)
at com.github.fge.jsonschema.main.JsonSchema.validate(JsonSchema.java:125)
at org.apache.synapse.mediators.builtin.ValidateMediator.mediate(ValidateMediator.java:250)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:97)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:59)
at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:158)
at org.apache.synapse.rest.Resource.process(Resource.java:343)
at org.apache.synapse.rest.API.process(API.java:399)
at org.apache.synapse.rest.RESTRequestHandler.apiProcess(RESTRequestHandler.java:123)
at org.apache.synapse.rest.RESTRequestHandler.dispatchToAPI(RESTRequestHandler.java:101)
at org.apache.synapse.rest.RESTRequestHandler.process(RESTRequestHandler.java:69)
at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:304)
at org.apache.synapse.core.axis2.SynapseMessageReceiver.receive(SynapseMessageReceiver.java:75)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
at org.apache.synapse.transport.passthru.ServerWorker.processNonEntityEnclosingRESTHandler(ServerWorker.java:325)
at org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:371)
at org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:151)
at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: com.google.common.util.concurrent.ExecutionError: java.lang.NoClassDefFoundError: org/mozilla/javascript/Scriptable
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2197)
at com.google.common.cache.LocalCache.get(LocalCache.java:3932)
at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3936)
at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4806)
at com.github.fge.jsonschema.core.processing.CachingProcessor.process(CachingProcessor.java:109)
at com.github.fge.jsonschema.processors.validation.ValidationChain.process(ValidationChain.java:107)
at com.github.fge.jsonschema.processors.validation.ValidationChain.process(ValidationChain.java:57)
at com.github.fge.jsonschema.core.processing.ProcessorMap$Mapper.process(ProcessorMap.java:166)
at com.github.fge.jsonschema.core.processing.ProcessingResult.of(ProcessingResult.java:79)
at com.github.fge.jsonschema.core.processing.CachingProcessor$1.load(CachingProcessor.java:128)
at com.github.fge.jsonschema.core.processing.CachingProcessor$1.load(CachingProcessor.java:120)
at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3522)
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2315)
at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2278)
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2193)
... 30 more
Caused by: java.lang.NoClassDefFoundError: org/mozilla/javascript/Scriptable
at com.github.fge.jsonschema.core.keyword.syntax.checkers.common.PatternPropertiesSyntaxChecker.extraChecks(PatternPropertiesSyntaxChecker.java:66)
at com.github.fge.jsonschema.core.keyword.syntax.checkers.helpers.SchemaMapSyntaxChecker.checkValue(SchemaMapSyntaxChecker.java:56)
at com.github.fge.jsonschema.core.keyword.syntax.checkers.AbstractSyntaxChecker.checkSyntax(AbstractSyntaxChecker.java:116)
at com.github.fge.jsonschema.core.keyword.syntax.SyntaxProcessor.validate(SyntaxProcessor.java:112)
at com.github.fge.jsonschema.core.keyword.syntax.SyntaxProcessor.rawProcess(SyntaxProcessor.java:70)
at com.github.fge.jsonschema.core.keyword.syntax.SyntaxProcessor.rawProcess(SyntaxProcessor.java:45)
at com.github.fge.jsonschema.core.processing.RawProcessor.process(RawProcessor.java:77)
at com.github.fge.jsonschema.core.processing.RawProcessor.process(RawProcessor.java:41)
at com.github.fge.jsonschema.core.processing.ProcessorChain$ProcessorMerger.process(ProcessorChain.java:190)
at com.github.fge.jsonschema.core.processing.ProcessingResult.of(ProcessingResult.java:79)
at com.github.fge.jsonschema.core.processing.CachingProcessor$1.load(CachingProcessor.java:128)
at com.github.fge.jsonschema.core.processing.CachingProcessor$1.load(CachingProcessor.java:120)
at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3522)
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2315)
at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2278)
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2193)
... 44 more
Caused by: java.lang.ClassNotFoundException: org.mozilla.javascript.Scriptable cannot be found by json-schema-validator-all_2.2.6.wso2v1
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 60 more

[2] https://github.com/daveclayton/json-schema-core/blob/master/src/main/java/com/github/fge/jsonschema/core/keyword/syntax/checkers/common/PatternSyntaxChecker.java#L62
[3] https://github.com/daveclayton/json-schema-core/blob/master/src/main/java/com/github/fge/jsonschema/core/util/RhinoHelper.java#L24






[ESBJAVA-5071] Enabling NHTTP transport message size based filtering could lead to worker thread pool depletion when responces contains attachments. Created: 03/Apr/17  Updated: 03/Apr/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Kevin Ratnasekera Assignee: Kevin Ratnasekera
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

This is related to feature introduced by ticket. [1] Observed ClientWorker threads which are waiting on a condition without progressing as per the below stack trace. This will probably lead to depletion of worker thread in the pool.

"HttpClientWorker-6" prio=6 tid=0x000000000c7e3000 nid=0x1fac waiting on condition [0x0000000029eae000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)

  • parking to wait for <0x00000000c8d97e28> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
    at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
    at org.apache.http.nio.util.SharedInputBuffer.waitForData(SharedInputBuffer.java:170)
    at org.apache.http.nio.util.SharedInputBuffer.read(SharedInputBuffer.java:242)
    at org.apache.http.nio.entity.ContentInputStream.read(ContentInputStream.java:66)
    at java.io.FilterInputStream.read(FilterInputStream.java:133)
    at org.apache.axiom.om.util.DetachableInputStream.read(DetachableInputStream.java:147)
    at java.io.FilterInputStream.read(FilterInputStream.java:133)
    at java.io.PushbackInputStream.read(PushbackInputStream.java:186)
    at org.apache.axiom.attachments.BoundaryPushbackInputStream.readFromStream(BoundaryPushbackInputStream.java:114)
    at org.apache.axiom.attachments.BoundaryPushbackInputStream.read(BoundaryPushbackInputStream.java:248)
    at org.apache.axiom.attachments.MIMEBodyPartInputStream.read(MIMEBodyPartInputStream.java:87)
    at org.apache.axiom.attachments.utils.BAAOutputStream.readFrom(BAAOutputStream.java:112)
    at org.apache.axiom.attachments.impl.BufferUtils.inputStream2OutputStream(BufferUtils.java:76)
    at org.apache.axiom.attachments.impl.PartFactory.createPart(PartFactory.java:136)
    at org.apache.axiom.attachments.Attachments.getPart(Attachments.java:705)
    at org.apache.axiom.attachments.Attachments.getNextPartDataHandler(Attachments.java:623)
    at org.apache.axiom.attachments.Attachments.fetchAllParts(Attachments.java:503)
    at org.apache.axiom.attachments.Attachments.getAllContentIDs(Attachments.java:519)
    at org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:283)
    at org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:172)
    at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
    at org.apache.synapse.transport.nhttp.ClientWorker.run(ClientWorker.java:319)
    at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:744)

Locked ownable synchronizers:

  • <0x00000000c8d97f00> (a java.util.concurrent.ThreadPoolExecutor$Worker)

[1] https://wso2.org/jira/browse/ESBJAVA-4989






[ESBJAVA-5052] Same policy attached twice in wsdl when creating a proxy with security Created: 20/Mar/17  Updated: 20/Mar/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.8.1
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Madhawa Gunasekara Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

This issue is not reproducible in 4.9.0. reproducible in 4.8.1 with patch 2034


Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes




[ESBJAVA-5025] Unable to read the response of a RPC message Created: 21/Feb/17  Updated: 21/Feb/17

Status: Open
Project: WSO2 ESB
Component/s: Mediators
Affects Version/s: 5.0.0
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Fabio Masini Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux/ESB5.0 with latest patches applied/RabbitMQ


Attachments: XML File wso2ToPMS.xml    
Severity: Major
Estimated Complexity: Moderate

 Description   

I'm trying to send a message to an amqp consumer using the RPC pattern.
The consumer correctly receive the message and responds to rabbitmq in the correct generated queue with the right correlation_id.
When the ESB receive the response it raise an exception:

TID[-1234] AppID[RabbitMQRPCProxyGeo2] [ESB] [2017-02-21 15:35:12,977] ERROR {org.apache.synapse.core.axis2.Axis2Sender} - Unexpected error during sending message out org.apache.axis2.transport.rabbitmq.utils.RabbitMQUtils.getTransportHeaders(RabbitMQUtils.java:125) org.apache.axis2.transport.rabbitmq.RabbitMQSender.sendOverAMQP(RabbitMQSender.java:101) org.apache.axis2.transport.rabbitmq.RabbitMQSender.sendMessage(RabbitMQSender.java:81) org.apache.axis2.transport.base.AbstractTransportSender.invoke(AbstractTransportSender.java:112) org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442) org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.send(DynamicAxisOperation.java:185) org.apache.synapse.core.axis2.DynamicAxisOperation$DynamicOperationClient.executeImpl(DynamicAxisOperation.java:167) org.apache.axis2.client.OperationClient.execute(OperationClient.java:149) org.apache.synapse.core.axis2.Axis2FlexibleMEPClient.send(Axis2FlexibleMEPClient.java:581) org.apache.synapse.core.axis2.Axis2Sender.sendOn(Axis2Sender.java:78) org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:548) org.apache.synapse.endpoints.AbstractEndpoint.send(AbstractEndpoint.java:382) org.apache.synapse.endpoints.AddressEndpoint.send(AddressEndpoint.java:65) org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:121) org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:97) org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:59) org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:158) org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:210) org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:173) org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:146) org.wso2.carbon.core.transports.CarbonServlet.doPost(CarbonServlet.java:231) javax.servlet.http.HttpServlet.service(HttpServlet.java:650) javax.servlet.http.HttpServlet.service(HttpServlet.java:731) org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61) org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:128) org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:68) javax.servlet.http.HttpServlet.service(HttpServlet.java:731) org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.service(DelegationServlet.java:68) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) org.owasp.csrfguard.CsrfGuardFilter.doFilter(CsrfGuardFilter.java:72) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) org.wso2.carbon.ui.filters.CSRFPreventionFilter.doFilter(CSRFPreventionFilter.java:88) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) org.wso2.carbon.ui.filters.CRLFPreventionFilter.doFilter(CRLFPreventionFilter.java:59) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) org.wso2.carbon.tomcat.ext.filter.CharacterSetFilter.doFilter(CharacterSetFilter.java:61) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) org.apache.catalina.filters.HttpHeaderSecurityFilter.doFilter(HttpHeaderSecurityFilter.java:120) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505) org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:99) org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:49) org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:62) org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:159) org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956) org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:57) org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436) org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078) org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625) org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1749) org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1708) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) java.lang.Thread.run(Thread.java:745) 

I already tried to not set any application header but the problem still perxists.






[ESBJAVA-5012] Aggregate Mediator Does Not Work If Proxy Service Called As local:// service Created: 05/Feb/17  Updated: 05/Feb/17

Status: Open
Project: WSO2 ESB
Component/s: Mediators
Affects Version/s: 5.0.0
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Sami Elhini Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Mac OSX


Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

Calling a proxy service that has an iterate in the in sequence and an aggregate on an out sequence from another proxy service using the local:// transport results in the aggregate mediator hanging and the call timing out. If I change to use a reference to my machine such as hostname the aggregate mediator works.






[ESBJAVA-4993] I/O Error at inputReady Created: 12/Jan/17  Updated: 12/Jan/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Vijitha Ekanayake Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

For some huge responses returned from the back-end server, below exception occurrs :
ERROR

{org.apache.synapse.transport.nhttp.ClientHandler} - I/O Error at inputReady : Truncated chunk ( expected size: 14243; actual size: 13455) {org.apache.synapse.transport.nhttp.ClientHandler}

org.apache.http.TruncatedChunkException: Truncated chunk ( expected size: 14243; actual size: 13455)
at org.apache.http.impl.nio.codecs.ChunkDecoder.read(ChunkDecoder.java:201)
at org.apache.http.nio.util.SharedInputBuffer.consumeContent(SharedInputBuffer.java:127)
at org.apache.http.nio.util.SharedInputBuffer.consumeContent(SharedInputBuffer.java:109)
at org.apache.synapse.transport.nhttp.ClientHandler.inputReady(ClientHandler.java:638)
at org.apache.http.impl.nio.DefaultNHttpClientConnection.consumeInput(DefaultNHttpClientConnection.java:264)
at org.apache.synapse.transport.http.conn.LoggingNHttpClientConnection.consumeInput(LoggingNHttpClientConnection.java:108)
at org.apache.synapse.transport.nhttp.ClientIODispatch.onInputReady(ClientIODispatch.java:82)
at org.apache.synapse.transport.nhttp.ClientIODispatch.onInputReady(ClientIODispatch.java:40)
at org.apache.http.impl.nio.reactor.AbstractIODispatch.inputReady(AbstractIODispatch.java:120)
at org.apache.http.impl.nio.reactor.BaseIOReactor.validate(BaseIOReactor.java:218)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:281)
at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:105)
at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:586)
at java.lang.Thread.run(Thread.java:745)






[ESBJAVA-4990] HTTP 2.0 specification support for WSO2 ESB Created: 23/Dec/16  Updated: 05/Jan/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Priority: Normal
Reporter: Chanaka Balasooriya Assignee: Thimuth Amarakoon
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate
Test cases added: Yes

 Description   

HTTP 2.0 specification support for WSO2 ESB

HTTP/2 is the newest version of hypertext transport protocol (HTTP) that is mainly focused on a more efficient use of network resources and a reduced perception of latency. Multiplexing, header compression, server push, stream priority, flow control and error handling are the core features of HTTP/2 protocol

To provide HTTP/2 support for WSO2 ESB, a TransportSender and an Inbound endpoint[1] that support HTTP/2 features have been implemented with test cases [2].

[1] https://github.com/wso2/carbon-mediation/pull/773
[2] https://github.com/wso2/product-esb/pull/632






[ESBJAVA-5042] Fault sequence source code is overridden in case of failure. Created: 09/Mar/17  Updated: 09/Mar/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Chethana Darshanamali Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: ESB
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

ESB 4.9.0


Severity: Major
Estimated Complexity: Moderate
Attachment License: I agree to grant a license to WSO2 for this work for inclusion in WSO2 works as per the WSO2 Contributor License Agreement and the Apache License 2.0
Test cases added: Yes

 Description   

In the configured fault sequence there is a simple property with OM type and default scopes to fill in value there. We want to return all details from exception as a SOAP Fault message when failure occurs. When we invoke the proxy with the request (that will execute the fault sequence), we are receiving a correct response describing Fault. Then after checking the current form of the Fault Sequence in Management console we can observe that the property has been overridden after this invocation. Also next invocation is invalid as for another error since it contains previous details.

Fault Sequence

<?xml version="1.0" encoding="UTF-8"?>
<sequence name="TestProxyFaultSequence" xmlns="http://ws.apache.org/ns/synapse">
    <property expression="fn:concat('[', get-property('ERROR_CODE'), ']: ', get-property('ERROR_MESSAGE'))"
        name="ERROR_REASON" scope="axis2" type="STRING" xmlns:ns="http://org.apache.synapse/xsd" xmlns:ns3="http://org.apache.synapse/xsd"/>
    <property name="ERROR_DATA" scope="default" type="OM">
        <data xmlns=""/>
    </property>
    <filter xmlns:ns="http://org.apache.synapse/xsd" xmlns:ns3="http://org.apache.synapse/xsd" xpath="string-length(get-property('ERROR_DETAIL')) > 0">
        <then>
            <enrich>
                <source clone="true" property="ERROR_DETAIL" type="property"/>
                <target action="replace" type="custom" xpath="$ctx:ERROR_DATA"/>
            </enrich>
        </then>
    </filter>
    <makefault version="soap11">
        <code value="soap11Env:Server" xmlns:soap11Env="http://schemassoap.org/soap/envelope/"/>
        <reason expression="get-property('axis2', 'ERROR_REASON')" xmlns:ns="http://org.apache.synapse/xsd" xmlns:ns3="http://org.apache.synapse/xsd"/>
        <detail expression="get-property('ERROR_DATA')" xmlns:ns="http://org.apache.synapse/xsd" xmlns:ns3="http://org.apache.synapse/xsd"/>
    </makefault>
    <log level="full"/>
    <respond/>
</sequence>

Fault Sequence(After the response)

<?xml version="1.0" encoding="UTF-8"?>
<sequence name="TestProxyFaultSequence" xmlns="http://ws.apache.org/ns/synapse">
    <property
        expression="fn:concat('[', get-property('ERROR_CODE'), ']: ', get-property('ERROR_MESSAGE'))"
        name="ERROR_REASON" scope="axis2" type="STRING"
        xmlns:ns="http://org.apache.synapse/xsd" xmlns:ns3="http://org.apache.synapse/xsd"/>
    <property name="ERROR_DATA" scope="default">
        <data xmlns="">org.apache.synapse.SynapseException: Sequence named Value {name ='null', keyValue ='NonExistent_1'} cannot be found&#xd;
	at org.apache.synapse.mediators.AbstractMediator.handleException(AbstractMediator.java:285)&#xd;
	at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:203)&#xd;
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:81)&#xd;
	at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:48)&#xd;
	at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:149)&#xd;
	at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:185)&#xd;
	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)&#xd;
	at org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:395)&#xd;
	at org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:142)&#xd;
	at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)&#xd;
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)&#xd;
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)&#xd;
	at java.lang.Thread.run(Thread.java:745)&#xd;
</data>
    </property>
    <filter xmlns:ns="http://org.apache.synapse/xsd"
        xmlns:ns3="http://org.apache.synapse/xsd" xpath="string-length(get-property('ERROR_DETAIL')) > 0">
        <then>
            <enrich>
                <source clone="true" property="ERROR_DETAIL" type="property"/>
                <target action="replace" type="custom" xpath="$ctx:ERROR_DATA"/>
            </enrich>
        </then>
    </filter>
    <makefault version="soap11">
        <code value="soap11Env:Server" xmlns:soap11Env="http://schemassoap.org/soap/envelope/"/>
        <reason expression="get-property('axis2', 'ERROR_REASON')"
            xmlns:ns="http://org.apache.synapse/xsd" xmlns:ns3="http://org.apache.synapse/xsd"/>
        <detail expression="get-property('ERROR_DATA')"
            xmlns:ns="http://org.apache.synapse/xsd" xmlns:ns3="http://org.apache.synapse/xsd"/>
    </makefault>
    <log level="full"/>
    <respond/>
</sequence>

Thanks & Regards,
Chethana.






[ESBJAVA-5043] AxisFault thrown when getting 202 response with empty input stream for call mediator with blocking true Created: 10/Mar/17  Updated: 10/Mar/17

Status: Open
Project: WSO2 ESB
Component/s: None
Affects Version/s: 4.9.0
Fix Version/s: None

Type: Bug Priority: Normal
Reporter: Himasha Guruge Assignee: Chanaka Fernando
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Severity: Major
Estimated Complexity: Moderate

 Description   

1. Create proxy1 with calls another proxy2 from a call mediator wi