Petals CDK

Error when restarting a SU containing a WSDL with french characters

Details

  • Type: Bug Bug
  • Status: Resolved Resolved
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: 5.1.1
  • Fix Version/s: 5.1.2, 5.2.0
  • Component/s: runtime
  • Security Level: Public
  • Description:
    Hide
    1. Create a SA project with Petals Studio. The SA embeds any SU 'provide'.
    2. Use french characters ('é', 'è', 'à', 'ç', 'ù', or '€') into the WSDL the SU
    3. Package the SA using the maven-petals-plugin (the maven-petals-plugin MUST includes the fix of MAVPETALSPLUG-12)
    4. Install the SA into Petals ESB. All is ok.
    5. Restart the Petals node
      ---> We get an error similar to:
      [Petals.Container.Components.petals-bc-soap-4]-SEVERE 2011-09-15 16:14:10,349 Service Unit 'sae-su-soap-injection-provide-1.0.0-SNAPSHOT' failed to deploy
      org.ow2.petals.component.framework.api.exception.PEtALSCDKException: org.ow2.easywsdl.extensions.wsdl4complexwsdl.api.WSDL4ComplexWsdlException: org.ow2.easywsdl.schema.api.XmlException: SchemaException: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.
              at org.ow2.petals.component.framework.su.AbstractServiceUnitManager.getWsdlDescription(AbstractServiceUnitManager.java:138)
              at org.ow2.petals.component.framework.su.AbstractServiceUnitManager.processProvidesNode(AbstractServiceUnitManager.java:882)
              at org.ow2.petals.component.framework.su.AbstractServiceUnitManager.processProvidesNodes(AbstractServiceUnitManager.java:969)
              at org.ow2.petals.component.framework.su.AbstractServiceUnitManager.deploy(AbstractServiceUnitManager.java:285)
              at org.ow2.petals.jbi.management.task.deployment.deploy.DeploySUToComponentTask.deploySUtoComponent(DeploySUToComponentTask.java:127)
              at org.ow2.petals.jbi.management.task.deployment.deploy.DeploySUToComponentTask.execute(DeploySUToComponentTask.java:79)
              at org.ow2.petals.jbi.management.TaskProcessor.process(TaskProcessor.java:78)
              at org.ow2.petals.jbi.management.task.deployment.deploy.DeployAllSUTask.registerAndDeploySU(DeployAllSUTask.java:166)
              at org.ow2.petals.jbi.management.task.deployment.deploy.DeployAllSUTask.deploySUS(DeployAllSUTask.java:122)
              at org.ow2.petals.jbi.management.task.deployment.deploy.DeployAllSUTask.execute(DeployAllSUTask.java:80)
              at org.ow2.petals.jbi.management.TaskProcessor.process(TaskProcessor.java:78)
              at org.ow2.petals.jbi.management.recovery.SystemRecoveryServiceImpl.recoverSA(SystemRecoveryServiceImpl.java:716)
              at org.ow2.petals.jbi.management.recovery.SystemRecoveryServiceImpl.recoverServiceAssembly(SystemRecoveryServiceImpl.java:591)
              at org.ow2.petals.jbi.management.recovery.SystemRecoveryServiceImpl$2.call(SystemRecoveryServiceImpl.java:323)
              at org.ow2.petals.jbi.management.recovery.SystemRecoveryServiceImpl$2.call(SystemRecoveryServiceImpl.java:1)
              at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
              at java.util.concurrent.FutureTask.run(FutureTask.java:138)
              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
              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:886)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
              at java.lang.Thread.run(Thread.java:662)
      Caused by: org.ow2.easywsdl.extensions.wsdl4complexwsdl.api.WSDL4ComplexWsdlException: org.ow2.easywsdl.schema.api.XmlException: SchemaException: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.
              at org.ow2.easywsdl.extensions.wsdl4complexwsdl.impl.inout.WSDL4ComplexWsdlReaderImpl.read(WSDL4ComplexWsdlReaderImpl.java:192)
              at org.ow2.easywsdl.extensions.wsdl4complexwsdl.impl.inout.WSDL4ComplexWsdlReaderImpl.read(WSDL4ComplexWsdlReaderImpl.java:116)
              at org.ow2.petals.component.framework.util.WSDLUtilImpl.createWsdlDescription(WSDLUtilImpl.java:220)
              at org.ow2.petals.component.framework.util.WSDLUtilImpl.createWsdlDescription(WSDLUtilImpl.java:205)
              at org.ow2.petals.component.framework.su.AbstractServiceUnitManager.getWsdlDescription(AbstractServiceUnitManager.java:136)
              ... 22 more
      Caused by: org.ow2.easywsdl.schema.api.XmlException: SchemaException: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.
              at org.ow2.easywsdl.schema.util.SourceHelper.convertInputSource2DOMSource(SourceHelper.java:109)
              at org.ow2.easywsdl.extensions.wsdl4complexwsdl.impl.inout.WSDL4ComplexWsdlReaderImpl.read(WSDL4ComplexWsdlReaderImpl.java:144)
              ... 26 more
      Caused by: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.
              at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:684)
              at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.read(UTF8Reader.java:405)
              at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(XMLEntityScanner.java:1742)
              at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.skipChar(XMLEntityScanner.java:1416)
              at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2792)
              at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
              at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
              at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511)
              at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808)
              at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
              at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)
              at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:235)
              at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:284)
              at org.ow2.easywsdl.schema.util.SourceHelper.convertInputSource2DOMSource(SourceHelper.java:102)
              ... 27 more
    Show
    1. Create a SA project with Petals Studio. The SA embeds any SU 'provide'.
    2. Use french characters ('é', 'è', 'à', 'ç', 'ù', or '€') into the WSDL the SU
    3. Package the SA using the maven-petals-plugin (the maven-petals-plugin MUST includes the fix of MAVPETALSPLUG-12)
    4. Install the SA into Petals ESB. All is ok.
    5. Restart the Petals node ---> We get an error similar to:
      [Petals.Container.Components.petals-bc-soap-4]-SEVERE 2011-09-15 16:14:10,349 Service Unit 'sae-su-soap-injection-provide-1.0.0-SNAPSHOT' failed to deploy
      org.ow2.petals.component.framework.api.exception.PEtALSCDKException: org.ow2.easywsdl.extensions.wsdl4complexwsdl.api.WSDL4ComplexWsdlException: org.ow2.easywsdl.schema.api.XmlException: SchemaException: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.
              at org.ow2.petals.component.framework.su.AbstractServiceUnitManager.getWsdlDescription(AbstractServiceUnitManager.java:138)
              at org.ow2.petals.component.framework.su.AbstractServiceUnitManager.processProvidesNode(AbstractServiceUnitManager.java:882)
              at org.ow2.petals.component.framework.su.AbstractServiceUnitManager.processProvidesNodes(AbstractServiceUnitManager.java:969)
              at org.ow2.petals.component.framework.su.AbstractServiceUnitManager.deploy(AbstractServiceUnitManager.java:285)
              at org.ow2.petals.jbi.management.task.deployment.deploy.DeploySUToComponentTask.deploySUtoComponent(DeploySUToComponentTask.java:127)
              at org.ow2.petals.jbi.management.task.deployment.deploy.DeploySUToComponentTask.execute(DeploySUToComponentTask.java:79)
              at org.ow2.petals.jbi.management.TaskProcessor.process(TaskProcessor.java:78)
              at org.ow2.petals.jbi.management.task.deployment.deploy.DeployAllSUTask.registerAndDeploySU(DeployAllSUTask.java:166)
              at org.ow2.petals.jbi.management.task.deployment.deploy.DeployAllSUTask.deploySUS(DeployAllSUTask.java:122)
              at org.ow2.petals.jbi.management.task.deployment.deploy.DeployAllSUTask.execute(DeployAllSUTask.java:80)
              at org.ow2.petals.jbi.management.TaskProcessor.process(TaskProcessor.java:78)
              at org.ow2.petals.jbi.management.recovery.SystemRecoveryServiceImpl.recoverSA(SystemRecoveryServiceImpl.java:716)
              at org.ow2.petals.jbi.management.recovery.SystemRecoveryServiceImpl.recoverServiceAssembly(SystemRecoveryServiceImpl.java:591)
              at org.ow2.petals.jbi.management.recovery.SystemRecoveryServiceImpl$2.call(SystemRecoveryServiceImpl.java:323)
              at org.ow2.petals.jbi.management.recovery.SystemRecoveryServiceImpl$2.call(SystemRecoveryServiceImpl.java:1)
              at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
              at java.util.concurrent.FutureTask.run(FutureTask.java:138)
              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
              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:886)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
              at java.lang.Thread.run(Thread.java:662)
      Caused by: org.ow2.easywsdl.extensions.wsdl4complexwsdl.api.WSDL4ComplexWsdlException: org.ow2.easywsdl.schema.api.XmlException: SchemaException: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.
              at org.ow2.easywsdl.extensions.wsdl4complexwsdl.impl.inout.WSDL4ComplexWsdlReaderImpl.read(WSDL4ComplexWsdlReaderImpl.java:192)
              at org.ow2.easywsdl.extensions.wsdl4complexwsdl.impl.inout.WSDL4ComplexWsdlReaderImpl.read(WSDL4ComplexWsdlReaderImpl.java:116)
              at org.ow2.petals.component.framework.util.WSDLUtilImpl.createWsdlDescription(WSDLUtilImpl.java:220)
              at org.ow2.petals.component.framework.util.WSDLUtilImpl.createWsdlDescription(WSDLUtilImpl.java:205)
              at org.ow2.petals.component.framework.su.AbstractServiceUnitManager.getWsdlDescription(AbstractServiceUnitManager.java:136)
              ... 22 more
      Caused by: org.ow2.easywsdl.schema.api.XmlException: SchemaException: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.
              at org.ow2.easywsdl.schema.util.SourceHelper.convertInputSource2DOMSource(SourceHelper.java:109)
              at org.ow2.easywsdl.extensions.wsdl4complexwsdl.impl.inout.WSDL4ComplexWsdlReaderImpl.read(WSDL4ComplexWsdlReaderImpl.java:144)
              ... 26 more
      Caused by: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.
              at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:684)
              at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.read(UTF8Reader.java:405)
              at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(XMLEntityScanner.java:1742)
              at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.skipChar(XMLEntityScanner.java:1416)
              at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2792)
              at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
              at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
              at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511)
              at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808)
              at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
              at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)
              at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:235)
              at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:284)
              at org.ow2.easywsdl.schema.util.SourceHelper.convertInputSource2DOMSource(SourceHelper.java:102)
              ... 27 more
  • Environment:
    Petals ESB 3.1.3 running on Windows XP (French edition)

Activity

Hide
Christophe DENEUX added a comment - Thu, 15 Sep 2011 - 16:35:23 +0200

When deploying the SU at the first time, its WSDL is updated with the endpoint name.
This update used the WSDLUtil.convertDescriptionToString(...) to get the String associated to the WSDL. Next this WSDL as String is converted into an InputStream to be saved on the local filesystem. So the encoding is not taking into account when writing the WSDL file.

The updated WSDL, as Description, can be directly saved using WSDLUtil.convertDescriptionToFile(...)

Show
Christophe DENEUX added a comment - Thu, 15 Sep 2011 - 16:35:23 +0200 When deploying the SU at the first time, its WSDL is updated with the endpoint name. This update used the WSDLUtil.convertDescriptionToString(...) to get the String associated to the WSDL. Next this WSDL as String is converted into an InputStream to be saved on the local filesystem. So the encoding is not taking into account when writing the WSDL file. The updated WSDL, as Description, can be directly saved using WSDLUtil.convertDescriptionToFile(...)
Christophe DENEUX made changes - Thu, 15 Sep 2011 - 16:35:23 +0200
Field Original Value New Value
Status New [ 10000 ] Open [ 10002 ]
Priority Major [ 3 ]
Christophe DENEUX made changes - Thu, 15 Sep 2011 - 16:37:18 +0200
Assignee Mathieu Carrolle [ mcarrolle ] Christophe DENEUX [ cdeneux ]
Christophe DENEUX made changes - Thu, 15 Sep 2011 - 16:37:27 +0200
Status Open [ 10002 ] In Progress [ 10003 ]
Hide
Christophe DENEUX added a comment - Thu, 15 Sep 2011 - 16:38:57 +0200

Fixed in branch petals-enterprise-3.1.x

Show
Christophe DENEUX added a comment - Thu, 15 Sep 2011 - 16:38:57 +0200 Fixed in branch petals-enterprise-3.1.x
Christophe DENEUX made changes - Thu, 15 Sep 2011 - 16:38:57 +0200
Status In Progress [ 10003 ] Resolved [ 10004 ]
Fix Version/s 5.1.2 [ 10180 ]
Resolution Fixed [ 1 ]
Hide
Christophe DENEUX added a comment - Mon, 10 Oct 2011 - 10:44:07 +0200

To merge in trunk

Show
Christophe DENEUX added a comment - Mon, 10 Oct 2011 - 10:44:07 +0200 To merge in trunk
Christophe DENEUX made changes - Mon, 10 Oct 2011 - 10:44:07 +0200
Status Resolved [ 10004 ] Open [ 10002 ]
Resolution Fixed [ 1 ]
Mathieu Carrolle made changes - Thu, 15 Dec 2011 - 10:57:45 +0100
Assignee Christophe DENEUX [ cdeneux ] Mathieu Carrolle [ mcarrolle ]
Mathieu Carrolle made changes - Thu, 15 Dec 2011 - 10:57:56 +0100
Status Open [ 10002 ] In Progress [ 10003 ]
Mathieu Carrolle made changes - Thu, 15 Dec 2011 - 13:49:31 +0100
Status In Progress [ 10003 ] Resolved [ 10004 ]
Fix Version/s 5.2.0_4.0 [ 10267 ]
Resolution Fixed [ 1 ]
Transition Status Change Time Execution Times Last Executer Last Execution Date
New New Open Open
5m 47s
1
Christophe DENEUX
Thu, 15 Sep 2011 - 16:35:23 +0200
Open Open In Progress In Progress
2m 4s
1
Christophe DENEUX
Thu, 15 Sep 2011 - 16:37:27 +0200
In Progress In Progress Resolved Resolved
1m 30s
1
Christophe DENEUX
Thu, 15 Sep 2011 - 16:38:57 +0200
Resolved Resolved Open Open
24d 18h 5m
1
Christophe DENEUX
Mon, 10 Oct 2011 - 10:44:07 +0200
Open Open In Progress In Progress
66d 1h 13m
1
Mathieu Carrolle
Thu, 15 Dec 2011 - 10:57:56 +0100
In Progress In Progress Resolved Resolved
2h 51m
1
Mathieu Carrolle
Thu, 15 Dec 2011 - 13:49:31 +0100

People

Dates

  • Created:
    Thu, 15 Sep 2011 - 16:29:36 +0200
    Updated:
    Thu, 15 Dec 2011 - 13:49:31 +0100
    Resolved:
    Thu, 15 Dec 2011 - 13:49:31 +0100