Uploaded image for project: 'Camel'
  1. Camel
  2. CAMEL-7025

StaxConverter throws NPE

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.12.2
    • 2.11.3, 2.12.3, 2.13.0
    • camel-core
    • None
    • Weblogic 10

    • Unknown

    Description

      This issue only happens when running in weblogic:

      After updating to Camel 2.12.2 the method createXMLStreamReader(InputStream in, Exchange exchange) in staxConverter throws an NPE because of the missing charsetName.
      Comparing the class with the previous version I saw camel no longer falls back to the default charset.

      As a workaround I set the property Exchange.CHARSET_NAME on explicitly -> still the same error.

      Debugging the code I noticed that in org.apache.camel.impl.converter.BaseTypeConverterRegistry#convertTo line 98 the exchange is not passed to the converter so I can neither use an explicit nor an implicit charset.

      Any workaround/fix would be greatly appreciated!

      StackTrace:
      java.lang.NullPointerException: charsetName
      at java.io.InputStreamReader.<init>(InputStreamReader.java:82)
      at weblogic.xml.stax.XMLStreamInputFactory.createXMLStreamReader(XMLStreamInputFactory.java:66)
      at org.apache.camel.converter.jaxp.StaxConverter.createXMLStreamReader(StaxConverter.java:170)
      at sun.reflect.GeneratedMethodAccessor85614.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at org.apache.camel.util.ObjectHelper.invokeMethod(ObjectHelper.java:990)
      at org.apache.camel.impl.converter.InstanceMethodTypeConverter.convertTo(InstanceMethodTypeConverter.java:78)
      at org.apache.camel.impl.converter.BaseTypeConverterRegistry.doConvertTo(BaseTypeConverterRegistry.java:275)
      at org.apache.camel.impl.converter.BaseTypeConverterRegistry.convertTo(BaseTypeConverterRegistry.java:113)
      at org.apache.camel.impl.converter.BaseTypeConverterRegistry.convertTo(BaseTypeConverterRegistry.java:98)
      at org.apache.camel.converter.jaxb.JaxbDataFormat.unmarshal(JaxbDataFormat.java:173)

      Attachments

        Activity

          People

            njiang Willem Jiang
            sbo13 Sebastian Bösl
            Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: