Bug 1109061
| Summary: | XML message not converted into Java object | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [JBoss] JBoss Fuse Service Works 6 | Reporter: | Jiri Pechanec <jpechane> | ||||
| Component: | SwitchYard | Assignee: | Keith Babo <kbabo> | ||||
| Status: | CLOSED DEFERRED | QA Contact: | Jiri Sedlacek <jsedlace> | ||||
| Severity: | high | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | 6.1.0 | CC: | kconner, oskutka, soa-p-jira | ||||
| Target Milestone: | --- | ||||||
| Target Release: | --- | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2014-06-23 15:15:01 UTC | Type: | Bug | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Embargoed: | |||||||
| Attachments: |
|
||||||
Created attachment 908390 [details]
Reproducer
We are not supposed to be logging BZs against 6.1 as of yet as we are only just at DR stage. I'm going to close this as DEFERRED. |
See attached reproducer This is an application using TCP binding. The input message is XML that is converted inside SY to a Java object as a message payload. The application works in FSW 6.0 - the log shows * * * ----------------------------------------------------- 07:24:11,501 TRACE [org.apache.camel.impl.converter.DefaultTypeConverter] (Camel (camel-4) thread #71 - NettyOrderedWorker) Converting java.lang.String -> org.jboss.soa.qa.shared.data.SimpleOrder with value: <?xml version="1.0" encoding="UTF-8"?> <simpleOrder id="1" xmlns="urn:jboss-soa:order-service:1.0"> <!--Optional:--> <items> <!--Zero or more repetitions:--> <item sku="2"> <!--Optional:--> <count>3</count> <!--Optional:--> <pricePerUnit>4</pricePerUnit> </item> </items> <!--Optional:--> <name>processTwoWay</name> <!--Optional:--> <quantity>5</quantity> </simpleOrder> 07:24:11,555 TRACE [org.apache.camel.impl.converter.DefaultTypeConverter] (Camel (camel-4) thread #71 - NettyOrderedWorker) Converting java.lang.String -> javax.xml.stream.XMLStreamReader with value: <?xml version="1.0" encoding="UTF-8"?> <simpleOrder id="1" xmlns="urn:jboss-soa:order-service:1.0"> <!--Optional:--> <items> <!--Zero or more repetitions:--> <item sku="2"> <!--Optional:--> <count>3</count> <!--Optional:--> <pricePerUnit>4</pricePerUnit> </item> </items> <!--Optional:--> <name>processTwoWay</name> <!--Optional:--> <quantity>5</quantity> </simpleOrder> 07:24:11,555 TRACE [org.apache.camel.impl.converter.DefaultTypeConverter] (Camel (camel-4) thread #71 - NettyOrderedWorker) Using converter: InstanceMethodTypeConverter: public javax.xml.stream.XMLStreamReader org.apache.camel.converter.jaxp.StaxConverter.createXMLStreamReader(java.lang.String) throws javax.xml.stream.XMLStreamException to convert [class java.lang.String=>interface javax.xml.stream.XMLStreamReader] 07:24:11,565 TRACE [org.apache.camel.impl.converter.DefaultTypeConverter] (Camel (camel-4) thread #71 - NettyOrderedWorker) Fallback type converter org.apache.camel.converter.jaxb.FallbackTypeConverter@2c5d5209 converted type from: org.jboss.soa.qa.shared.data.SimpleOrder to: java.lang.String 07:24:11,575 TRACE [org.apache.camel.impl.converter.DefaultTypeConverter] (Camel (camel-4) thread #71 - NettyOrderedWorker) Converting org.jboss.soa.qa.shared.data.SimpleOrder -> java.lang.String with value: SimpleOrder [id=1, name=processTwoWay, items=[OrderItem [sku=2, count=3, pricePerUnit=4.0]], totalPrice=12] 07:24:11,587 TRACE [org.apache.camel.impl.converter.DefaultTypeConverter] (Camel (camel-4) thread #71 - NettyOrderedWorker) Converting java.lang.String -> java.lang.String with value: <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <simpleOrder id="1" xmlns="urn:jboss-soa:order-service:1.0"> <items> <item sku="2"> <count>3</count> <pricePerUnit>4.0</pricePerUnit> </item> </items> <name>processTwoWay</name> <quantity>1</quantity> </simpleOrder> 07:24:11,587 TRACE [org.apache.camel.impl.converter.DefaultTypeConverter] (Camel (camel-4) thread #71 - NettyOrderedWorker) Fallback type converter org.apache.camel.converter.jaxb.FallbackTypeConverter@2c5d5209 converted type from: java.lang.String to: org.jboss.soa.qa.shared.data.SimpleOrder 07:24:11,587 INFO [org.switchyard.handlers.MessageTraceHandler] (Camel (camel-4) thread #71 - NettyOrderedWorker) ------- Begin Message Trace ------- Consumer -> {urn:tcp-bean-service:1.0}OrderServiceProxyTwoWay Provider -> [unassigned] Operation -> processTwoWay MEP -> IN_OUT Phase -> IN State -> OK Exchange Context -> CamelCreatedTimestamp ................: Tue Jun 10 07:24:11 CEST 2014 CamelFilterMatched ...................: false CamelToEndpoint ......................: direct://%7Burn:tcp-bean-service:1.0%7DOrderServiceProxyTwoWay TIME .................................: 1402377851571 org.switchyard.bus.camel.consumer ....: ServiceReference [name={urn:tcp-bean-service:1.0}OrderServiceProxyTwoWay, interface=SWITCHYARD010007: BaseServiceInterface [type=java, operations=[SWITCHYARD010008: processOneWay : IN_ONLY : [java:org.jboss.soa.qa.shared.data.SimpleOrder, null, null], SWITCHYARD010008: processTwoWay : IN_OUT : [java:org.jboss.soa.qa.shared.data.SimpleOrder, java:java.lang.String, null], SWITCHYARD010008: processTwoWayWithException : IN_OUT : [java:org.jboss.soa.qa.shared.data.SimpleOrder, java:java.lang.String, null]]], domain=ServiceDomain [name=null]] org.switchyard.bus.camel.contract ....: org.switchyard.metadata.BaseExchangeContract@4fb5f854 org.switchyard.bus.camel.dispatcher ..: org.switchyard.bus.camel.ExchangeDispatcher@33c27bae org.switchyard.bus.camel.labels ......: {org.switchyard.exchangeGatewayName=[org.switchyard.label.behavior.transient], org.switchyard.exchangeInitiatedNS=[org.switchyard.label.behavior.transient], rtgov.request.received=[org.switchyard.label.behavior.transient]} org.switchyard.bus.camel.phase .......: IN org.switchyard.bus.camel.replyHandler : org.switchyard.component.camel.CamelResponseHandler@145ecb40 org.switchyard.exchangeGatewayName ...: ProxyTwoWayPort org.switchyard.exchangeInitiatedNS ...: 92956966741738 rtgov.request.received ...............: RequestReceived: serviceType={urn:tcp-bean-service:1.0}OrderServiceProxyTwoWay interface=org.jboss.soa.qa.tcp_bean_service.OrderServiceProxy operation=processTwoWay fault=null messageType=org.jboss.soa.qa.shared.data.SimpleOrder content=null Message Context -> breadcrumbId ........................: ID-jpechane-40536-1402377812511-3-3 org.switchyard.bus.camel.labels .....: {org.switchyard.contentType=[org.switchyard.label.behavior.transient], org.switchyard.bus.camel.messageSent=[org.switchyard.label.behavior.transient]} org.switchyard.bus.camel.messageSent : true org.switchyard.contentType ..........: java:org.jboss.soa.qa.shared.data.SimpleOrder org.switchyard.messageId ............: ID-jpechane-40536-1402377812511-3-3 Message Content -> <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <simpleOrder id="1" xmlns="urn:jboss-soa:order-service:1.0"> <items> <item sku="2"> <count>3</count> <pricePerUnit>4.0</pricePerUnit> </item> </items> <name>processTwoWay</name> <quantity>1</quantity> </simpleOrder> ------ End Message Trace ------- ------------------------------------------------ When executing in JBoss Fuse with SY 2.0.Alpha installed the log looks like * * * 09:28:03,409 | TRACE | ttyOrderedWorker | DefaultTypeConverter | 390 - org.apache.camel.camel-core - 2.12.2 | Converting org.jboss.netty.buffer.BigEndianHeapChannelBuffer -> java.lang.String with value: BigEndianHeapChannelBuffer(ridx=0, widx=396, cap=396) 09:28:03,410 | TRACE | ttyOrderedWorker | DefaultTypeConverter | 390 - org.apache.camel.camel-core - 2.12.2 | Using converter: StaticMethodTypeConverter: public static java.lang.String org.apache.camel.component.netty.NettyConverter.toString(org.jboss.netty.buffer.ChannelBuffer,org.apache.camel.Exchange) throws java.io.UnsupportedEncodingException to convert [class org.jboss.netty.buffer.BigEndianHeapChannelBuffer=>class java.lang.String] 09:28:03,410 | TRACE | ttyOrderedWorker | DefaultTypeConverter | 390 - org.apache.camel.camel-core - 2.12.2 | Converting byte[] -> java.lang.String with value: [60, 63, 120, 109, 108, 32, 118, 101, 114, 115, 105, 111, 110, 61, 34, 49, 46, 48, 34, 32, 101, 110, 99, 111, 100, 105, 110, 103, 61, 34, 85, 84, 70, 45, 56, 34, 63, 62, 10, 60, 115, 105, 109, 112, 108, 101, 79, 114, 100, 101, 114, 32, 105, 100, 61, 34, 49, 34, 32, 120, 109, 108, 110, 115, 61, 34, 117, 114, 110, 58, 106, 98, 111, 115, 115, 45, 115, 111, 97, 58, 111, 114, 100, 101, 114, 45, 115, 101, 114, 118, 105, 99, 101, 58, 49, 46, 48, 34, 62, 10, 9, 60, 33, 45, 45, 79, 112, 116, 105, 111, 110, 97, 108, 58, 45, 45, 62, 10, 9, 60, 105, 116, 101, 109, 115, 62, 10, 9, 9, 60, 33, 45, 45, 90, 101, 114, 111, 32, 111, 114, 32, 109, 111, 114, 101, 32, 114, 101, 112, 101, 116, 105, 116, 105, 111, 110, 115, 58, 45, 45, 62, 10, 9, 9, 60, 105, 116, 101, 109, 32, 115, 107, 117, 61, 34, 50, 34, 62, 10, 9, 9, 9, 60, 33, 45, 45, 79, 112, 116, 105, 111, 110, 97, 108, 58, 45, 45, 62, 10, 9, 9, 9, 60, 99, 111, 117, 110, 116, 62, 51, 60, 47, 99, 111, 117, 110, 116, 62, 10, 9, 9, 9, 60, 33, 45, 45, 79, 112, 116, 105, 111, 110, 97, 108, 58, 45, 45, 62, 10, 9, 9, 9, 60, 112, 114, 105, 99, 101, 80, 101, 114, 85, 110, 105, 116, 62, 52, 60, 47, 112, 114, 105, 99, 101, 80, 101, 114, 85, 110, 105, 116, 62, 10, 9, 9, 60, 47, 105, 116, 101, 109, 62, 10, 9, 60, 47, 105, 116, 101, 109, 115, 62, 10, 9, 60, 33, 45, 45, 79, 112, 116, 105, 111, 110, 97, 108, 58, 45, 45, 62, 10, 9, 60, 110, 97, 109, 101, 62, 112, 114, 111, 99, 101, 115, 115, 79, 110, 101, 87, 97, 121, 60, 47, 110, 97, 109, 101, 62, 10, 9, 60, 33, 45, 45, 79, 112, 116, 105, 111, 110, 97, 108, 58, 45, 45, 62, 10, 9, 60, 113, 117, 97, 110, 116, 105, 116, 121, 62, 53, 60, 47, 113, 117, 97, 110, 116, 105, 116, 121, 62, 10, 60, 47, 115, 105, 109, 112, 108, 101, 79, 114, 100, 101, 114, 62, 10] 09:28:03,410 | TRACE | ttyOrderedWorker | DefaultTypeConverter | 390 - org.apache.camel.camel-core - 2.12.2 | Using converter: StaticMethodTypeConverter: public static java.lang.String org.apache.camel.converter.IOConverter.toString(byte[],org.apache.camel.Exchange) throws java.io.IOException to convert [class [B=>class java.lang.String] 09:28:03,410 | DEBUG | ttyOrderedWorker | SendProcessor | 390 - org.apache.camel.camel-core - 2.12.2 | >>>> Endpoint[switchyard://OrderServiceProxyOneWay] Exchange[Message: <?xml version="1.0" encoding="UTF-8"?> <simpleOrder id="1" xmlns="urn:jboss-soa:order-service:1.0"> <!--Optional:--> <items> <!--Zero or more repetitions:--> <item sku="2"> <!--Optional:--> <count>3</count> <!--Optional:--> <pricePerUnit>4</pricePerUnit> </item> </items> <!--Optional:--> <name>processOneWay</name> <!--Optional:--> <quantity>5</quantity> </simpleOrder> ] 09:28:03,411 | TRACE | ttyOrderedWorker | DefaultTypeConverter | 390 - org.apache.camel.camel-core - 2.12.2 | Converting org.jboss.netty.buffer.BigEndianHeapChannelBuffer -> org.jboss.soa.qa.shared.data.SimpleOrder with value: BigEndianHeapChannelBuffer(ridx=0, widx=396, cap=396) 09:28:03,411 | TRACE | ttyOrderedWorker | DefaultTypeConverter | 390 - org.apache.camel.camel-core - 2.12.2 | Converting org.jboss.netty.buffer.BigEndianHeapChannelBuffer -> java.lang.String with value: BigEndianHeapChannelBuffer(ridx=0, widx=396, cap=396) 09:28:03,411 | TRACE | ttyOrderedWorker | DefaultTypeConverter | 390 - org.apache.camel.camel-core - 2.12.2 | Using converter: StaticMethodTypeConverter: public static java.lang.String org.apache.camel.component.netty.NettyConverter.toString(org.jboss.netty.buffer.ChannelBuffer,org.apache.camel.Exchange) throws java.io.UnsupportedEncodingException to convert [class org.jboss.netty.buffer.BigEndianHeapChannelBuffer=>class java.lang.String] 09:28:03,411 | TRACE | ttyOrderedWorker | DefaultTypeConverter | 390 - org.apache.camel.camel-core - 2.12.2 | Converting byte[] -> java.lang.String with value: [60, 63, 120, 109, 108, 32, 118, 101, 114, 115, 105, 111, 110, 61, 34, 49, 46, 48, 34, 32, 101, 110, 99, 111, 100, 105, 110, 103, 61, 34, 85, 84, 70, 45, 56, 34, 63, 62, 10, 60, 115, 105, 109, 112, 108, 101, 79, 114, 100, 101, 114, 32, 105, 100, 61, 34, 49, 34, 32, 120, 109, 108, 110, 115, 61, 34, 117, 114, 110, 58, 106, 98, 111, 115, 115, 45, 115, 111, 97, 58, 111, 114, 100, 101, 114, 45, 115, 101, 114, 118, 105, 99, 101, 58, 49, 46, 48, 34, 62, 10, 9, 60, 33, 45, 45, 79, 112, 116, 105, 111, 110, 97, 108, 58, 45, 45, 62, 10, 9, 60, 105, 116, 101, 109, 115, 62, 10, 9, 9, 60, 33, 45, 45, 90, 101, 114, 111, 32, 111, 114, 32, 109, 111, 114, 101, 32, 114, 101, 112, 101, 116, 105, 116, 105, 111, 110, 115, 58, 45, 45, 62, 10, 9, 9, 60, 105, 116, 101, 109, 32, 115, 107, 117, 61, 34, 50, 34, 62, 10, 9, 9, 9, 60, 33, 45, 45, 79, 112, 116, 105, 111, 110, 97, 108, 58, 45, 45, 62, 10, 9, 9, 9, 60, 99, 111, 117, 110, 116, 62, 51, 60, 47, 99, 111, 117, 110, 116, 62, 10, 9, 9, 9, 60, 33, 45, 45, 79, 112, 116, 105, 111, 110, 97, 108, 58, 45, 45, 62, 10, 9, 9, 9, 60, 112, 114, 105, 99, 101, 80, 101, 114, 85, 110, 105, 116, 62, 52, 60, 47, 112, 114, 105, 99, 101, 80, 101, 114, 85, 110, 105, 116, 62, 10, 9, 9, 60, 47, 105, 116, 101, 109, 62, 10, 9, 60, 47, 105, 116, 101, 109, 115, 62, 10, 9, 60, 33, 45, 45, 79, 112, 116, 105, 111, 110, 97, 108, 58, 45, 45, 62, 10, 9, 60, 110, 97, 109, 101, 62, 112, 114, 111, 99, 101, 115, 115, 79, 110, 101, 87, 97, 121, 60, 47, 110, 97, 109, 101, 62, 10, 9, 60, 33, 45, 45, 79, 112, 116, 105, 111, 110, 97, 108, 58, 45, 45, 62, 10, 9, 60, 113, 117, 97, 110, 116, 105, 116, 121, 62, 53, 60, 47, 113, 117, 97, 110, 116, 105, 116, 121, 62, 10, 60, 47, 115, 105, 109, 112, 108, 101, 79, 114, 100, 101, 114, 62, 10] 09:28:03,411 | TRACE | ttyOrderedWorker | DefaultTypeConverter | 390 - org.apache.camel.camel-core - 2.12.2 | Using converter: StaticMethodTypeConverter: public static java.lang.String org.apache.camel.converter.IOConverter.toString(byte[],org.apache.camel.Exchange) throws java.io.IOException to convert [class [B=>class java.lang.String] 09:28:03,412 | TRACE | ttyOrderedWorker | DefaultTypeConverter | 390 - org.apache.camel.camel-core - 2.12.2 | Converting org.apache.camel.impl.DefaultMessage -> org.jboss.soa.qa.shared.data.SimpleOrder with value: Message: <?xml version="1.0" encoding="UTF-8"?> <simpleOrder id="1" xmlns="urn:jboss-soa:order-service:1.0"> <!--Optional:--> <items> <!--Zero or more repetitions:--> <item sku="2"> <!--Optional:--> <count>3</count> <!--Optional:--> <pricePerUnit>4</pricePerUnit> </item> </items> <!--Optional:--> <name>processOneWay</name> <!--Optional:--> <quantity>5</quantity> </simpleOrder> 09:28:03,413 | DEBUG | ttyOrderedWorker | ProducerCache | 390 - org.apache.camel.camel-core - 2.12.2 | >>>> Endpoint[direct://%7Burn:tcp-bean-service:1.0%7DOrderServiceProxyOneWay] Exchange[Message: [Body is null]] 09:28:03,413 | DEBUG | ttyOrderedWorker | FilterProcessor | 390 - org.apache.camel.camel-core - 2.12.2 | Filter matches: false for exchange: Exchange[Message: [Body is null]] 09:28:03,414 | INFO | ttyOrderedWorker | MessageTraceHandler | 408 - org.jboss.logging.jboss-logging - 3.1.2.GA | ------- Begin Message Trace ------- Consumer -> {urn:tcp-bean-service:1.0}OrderServiceProxyOneWay Provider -> [unassigned] Operation -> processOneWay MEP -> IN_ONLY Phase -> IN State -> OK Exchange Context -> CamelCreatedTimestamp ................: Fri Jun 13 09:28:03 CEST 2014 CamelFilterMatched ...................: false CamelMessageHistory ..................: [DefaultMessageHistory[routeId=direct:{urn:tcp-bean-service:1.0}OrderServiceProxyOneWay, node=doTry22], DefaultMessageHistory[routeId=direct:{urn:tcp-bean-service:1.0}OrderServiceProxyOneWay, node=filter64], DefaultMessageHistory[routeId=direct:{urn:tcp-bean-service:1.0}OrderServiceProxyOneWay, node=process548]] CamelToEndpoint ......................: direct://%7Burn:tcp-bean-service:1.0%7DOrderServiceProxyOneWay org.switchyard.bus.camel.consumer ....: ServiceReference [name={urn:tcp-bean-service:1.0}OrderServiceProxyOneWay, interface=BaseServiceInterface [type=java, operations=[processTwoWay : IN_OUT : [java:org.jboss.soa.qa.shared.data.SimpleOrder, java:java.lang.String, null], processTwoWayWithException : IN_OUT : [java:org.jboss.soa.qa.shared.data.SimpleOrder, java:java.lang.String, null], processOneWay : IN_ONLY : [java:org.jboss.soa.qa.shared.data.SimpleOrder, null, null]]], domain=ServiceDomain [name={urn:tcp-bean-service:1.0}tcp-bean-service]] org.switchyard.bus.camel.contract ....: org.switchyard.metadata.BaseExchangeContract@25eea5cf org.switchyard.bus.camel.dispatcher ..: org.switchyard.bus.camel.ExchangeDispatcher@2adfb11e org.switchyard.bus.camel.labels ......: {org.switchyard.exchangeGatewayName=[org.switchyard.label.behavior.transient], org.switchyard.exchangeInitiatedNS=[org.switchyard.label.behavior.transient]} org.switchyard.bus.camel.phase .......: IN org.switchyard.bus.camel.replyHandler : org.switchyard.component.camel.switchyard.CamelResponseHandler@1badb229 org.switchyard.exchangeGatewayName ...: ProxyOneWayPort org.switchyard.exchangeInitiatedNS ...: 187771907059587 Message Context -> breadcrumbId ........................: ID-jpechane-53677-1402643991408-2-41 org.switchyard.bus.camel.labels .....: {org.switchyard.contentType=[org.switchyard.label.behavior.transient], org.switchyard.bus.camel.messageSent=[org.switchyard.label.behavior.transient]} org.switchyard.bus.camel.messageSent : true org.switchyard.contentType ..........: java:org.jboss.soa.qa.shared.data.SimpleOrder org.switchyard.messageId ............: ID-jpechane-53677-1402643991408-2-41 Message Content -> null ------ End Message Trace ------- * * * Please note that the result of conversion is null in the second case