[
https://issues.apache.org/jira/browse/CAMEL-5359?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13648627#comment-13648627
]
Joshua Ecklund edited comment on CAMEL-5359 at 5/3/13 5:58 PM:
---------------------------------------------------------------
Are there any plans to fix this? I am trying to use Castor to marshal some
POJOs using my castor mapping XML, but when marshal is called I get this in my
logs:
{quote}
org.exolab.castor.xml.Marshaller - Marshaller called using one of the *static*
marshal(Object, \*) methods. This will ignore any mapping files as specified.
Please consider switching to using Marshaller instances and calling one of the
marshal\* methods.
{quote}
The marshal call results in XML being produced using introspection and not the
mappings I have configured. This is a fairly major issue in my opinion. Also,
I would not call this an improvement -- the basic functionality of the Castor
marshaller does not work, which I would call a major bug.
was (Author: mprowler):
Are there any plans to fix this? I am trying to use Castor to marshal some
POJOs using my castor mapping XML, but when marshal is called I get this in my
logs:
{quote}
org.exolab.castor.xml.Marshaller - Marshaller called using one of the *static*
marshal(Object, \*) methods. This will ignore any mapping files as specified.
Please consider switching to using Marshaller instances and calling one of the
marshal\* methods.
{quote}
The marshal call results in XML being produced using introspection and not the
mappings I have configured. This is a fairly major issue in my opinion.
> camel-castor does not use mapping file to convert XML to Java
> -------------------------------------------------------------
>
> Key: CAMEL-5359
> URL: https://issues.apache.org/jira/browse/CAMEL-5359
> Project: Camel
> Issue Type: Improvement
> Components: osgi
> Affects Versions: 2.8.5, 2.9.2
> Environment: Apache Service Mix: MacOS, Linux, Windows
> Reporter: jacob vandergoot
> Priority: Minor
> Attachments: PATCH-CAMEL-5359.txt
>
>
> The camel-castor using the static marshal() method to convert the java object
> into an XML document. This static method will not leverage the castor
> mapping XML file defined. Instead the XMLContext should be used to get an
> instance of a Marshaller that understands the castor mapping XML file.
> The following change in AbstractCastorDataFormat seemed to resolve the
> problem.
> public void marshal(Exchange exchange, Object body, OutputStream
> outputStream) throws Exception {
> Writer writer = new OutputStreamWriter(outputStream, encoding);
> Marshaller marshaller = getXmlContext(
> exchange.getContext().getClassResolver())
> .createMarshaller();
> marshaller.setWriter(writer);
> marshaller.marshal(body);
> }
> Also there may be a concurrency concern with how the unmarshaller is called.
> There is only one instance of an unmarshaller that is used by the DataFormat
> and for concurrent requests, that one instance may be converting multiple
> requests.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira