[jira] [Created] (CAMEL-7837) Support json2json data transformation

2014-09-19 Thread Charles Moulliard (JIRA)
Charles Moulliard created CAMEL-7837:


 Summary: Support json2json data transformation
 Key: CAMEL-7837
 URL: https://issues.apache.org/jira/browse/CAMEL-7837
 Project: Camel
  Issue Type: New Feature
Affects Versions: 2.14.0
Reporter: Charles Moulliard


We should support json2json data transformation.
A good candidate project exists which is Apache Licensed 2 : 
- http://chunqishi.github.io/json2json/
- https://github.com/chunqishi/json2json



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CAMEL-7787) Multicast - Should defer UoW done until after the aggregate has been done

2014-09-19 Thread Franz Forsthofer (JIRA)

 [ 
https://issues.apache.org/jira/browse/CAMEL-7787?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Franz Forsthofer updated CAMEL-7787:

Attachment: (was: 
0001-stream-caching-in-sub-routes-of-splitter-and-multi-c.patch)

 Multicast - Should defer UoW done until after the aggregate has been done
 -

 Key: CAMEL-7787
 URL: https://issues.apache.org/jira/browse/CAMEL-7787
 Project: Camel
  Issue Type: Improvement
  Components: camel-core, eip
Reporter: Claus Ibsen
Assignee: Claus Ibsen
 Fix For: 2.15.0


 See nabble
 http://camel.465427.n5.nabble.com/Stream-Cache-spool-file-deletion-before-aggregation-in-Multicast-involving-huge-data-tp5756092.html
 In the multicast/splitter we should defer the UoW done to *after* the 
 aggregate has been called, as in the nabble example, the stream cache 
 overflow to disk would have deleted the file etc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CAMEL-7787) Multicast - Should defer UoW done until after the aggregate has been done

2014-09-19 Thread Franz Forsthofer (JIRA)

 [ 
https://issues.apache.org/jira/browse/CAMEL-7787?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Franz Forsthofer updated CAMEL-7787:

Attachment: 0001-stream-caching-in-sub-routes-of-splitter-and-multi-c.patch

We found an additional case where a problem can occur: nesting of 
splitter/mulitcast where the aggregation strategy returns a stream cache.
We fixed this also in the new uploaded patch.

 Multicast - Should defer UoW done until after the aggregate has been done
 -

 Key: CAMEL-7787
 URL: https://issues.apache.org/jira/browse/CAMEL-7787
 Project: Camel
  Issue Type: Improvement
  Components: camel-core, eip
Reporter: Claus Ibsen
Assignee: Claus Ibsen
 Fix For: 2.15.0

 Attachments: 
 0001-stream-caching-in-sub-routes-of-splitter-and-multi-c.patch


 See nabble
 http://camel.465427.n5.nabble.com/Stream-Cache-spool-file-deletion-before-aggregation-in-Multicast-involving-huge-data-tp5756092.html
 In the multicast/splitter we should defer the UoW done to *after* the 
 aggregate has been called, as in the nabble example, the stream cache 
 overflow to disk would have deleted the file etc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (CAMEL-7838) Aggregator - Using groupExchanges should store them on body mid-processing

2014-09-19 Thread Marc Carter (JIRA)
Marc Carter created CAMEL-7838:
--

 Summary: Aggregator - Using groupExchanges should store them on 
body mid-processing
 Key: CAMEL-7838
 URL: https://issues.apache.org/jira/browse/CAMEL-7838
 Project: Camel
  Issue Type: Improvement
  Components: camel-core
Affects Versions: 2.13.2
Reporter: Marc Carter
Priority: Minor


CAMEL-6744 encompassed setting the ListV into the body {{onCompletion}} only 
when using anything based on {{AbstractListAggregationStrategy}}

However any strategies based on this class cannot be used with a persistent 
repository because the GROUPED_EXCHANGE property appears not to be serialised 
so keeps being reset to the latest message only.
(I spotted this by checking properties in the completion predicate and 
AGGREGATED_SIZE != GROUPED_EXCHANGE.size())

Given this limitation, it doesn't seem sensible to only promote to the body on 
completion. The only reason I can think of is to limit regression to existing 
completionPredicates that expect the first message in {{body}} instead of 
{{body.get(0)}}. That said, CAMEL-6744 already introduced this change to the 
subsequent route.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (CAMEL-7839) Xpath is not namespace aware in choice

2014-09-19 Thread Oliver Holzmann (JIRA)
Oliver Holzmann created CAMEL-7839:
--

 Summary: Xpath is not namespace aware in choice
 Key: CAMEL-7839
 URL: https://issues.apache.org/jira/browse/CAMEL-7839
 Project: Camel
  Issue Type: Bug
  Components: camel-core
Affects Versions: 2.14.0
Reporter: Oliver Holzmann


I have a route (XML definition) containing a choice based on xpath expressions. 
The xpath expressions are using custom namespaces. After migration from camel 
2.13.2 to camel 2.14.0 the namespaces are not registered to the XpathExpression 
and XPathBuilder anymore.

XPath in setProperty definitions referencing the same namespaces still work 
fine.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (CAMEL-7802) XML Signature: parameter for output character encoding and parent node via XPath

2014-09-19 Thread Willem Jiang (JIRA)

 [ 
https://issues.apache.org/jira/browse/CAMEL-7802?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Willem Jiang resolved CAMEL-7802.
-
Resolution: Fixed

 XML Signature: parameter for output character encoding and parent node via 
 XPath
 

 Key: CAMEL-7802
 URL: https://issues.apache.org/jira/browse/CAMEL-7802
 Project: Camel
  Issue Type: Improvement
  Components: camel-xmlsecurity
Reporter: Franz Forsthofer
Assignee: Willem Jiang
 Fix For: 2.15.0

 Attachments: 0001-xml-signature-output-encoding-and-parent-XPath.patch


 Two  improvements for the xmlsec component concerning the XML Signature 
 signer and verifier:
 - The output character encoding for the signer and verifier (if no character 
 encoding is specified UTF-8 will be used as before) can be specified via the 
 configuration parameter 'outputXmlEncoding'.
 - In the Enveloped XML Signature case, the parent node can be now specified 
 via an XPATH expression (new parameter 'parentXpath'). This allows selecting 
 the parent node in a more flexible way as before where the parent node was 
 specified via local name and namespace.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CAMEL-7827) When using CXFRS with simple HTTP api, variable replacement should be available

2014-09-19 Thread Willem Jiang (JIRA)

 [ 
https://issues.apache.org/jira/browse/CAMEL-7827?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Willem Jiang updated CAMEL-7827:

Summary: When using CXFRS with simple HTTP api, variable replacement should 
be available  (was: Wen using CXFRS with simple HTTP api, variable replacement 
should be available)

 When using CXFRS with simple HTTP api, variable replacement should be 
 available
 ---

 Key: CAMEL-7827
 URL: https://issues.apache.org/jira/browse/CAMEL-7827
 Project: Camel
  Issue Type: Improvement
  Components: camel-cxf
Reporter: François LAROCHE
Assignee: Willem Jiang
Priority: Minor
 Fix For: 2.15.0


 I am calling an endpoint using cxfrs client with the http api. So I have 
 something like that in the DSL : 
  
 .setHeader(CxfConstants.CAMEL_CXF_RS_USING_HTTP_API, constant(true)) 
 .setHeader(Exchange.HTTP_PATH, simple(/endpoint/${header.myHeader})) 
 .setHeader(Exchange.HTTP_METHOD, constant(POST)) 
 .to(cxfrs:bean:myClient) 
  
 This usually works fine. 
 I had a somewhat nasty error when someone did a copy paste of my server, 
 with the variable substitution style (something like /endpoint/{myVariable}) 
 at that point, ${header.myHeader} resolved to {myVariable}, thus the url the 
 client will try to resolve is  /endpoint/{myVariable}. When trying to parse 
 this URL, CXF will not be happy, since there is no value to replace what it 
 thinks to be a variable, and will throw an IllegalArgumentException with 
 message Unresolved variables; only 0 value(s) given for 1 unique 
 variable(s). 
 After looking a bit in the code, I understood better what happens. 
 In order to avoid that, it would be nice to use the mechanism of CXF to 
 replace variables in URI. 
 In the DSL, we would have something like : 
  
 .setHeader(CxfConstants.CAMEL_CXF_RS_USING_HTTP_API, constant(true)) 
 .setHeader(CxfConstants.CAMEL_CXF_RS_VAR_VALUES, 
 simple([${header.myHeader}])) 
 .setHeader(Exchange.HTTP_PATH, constant(/endpoint/{myVariable})) 
 .setHeader(Exchange.HTTP_METHOD, constant(POST)) 
 .to(cxfrs:bean:myClient) 
  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (CAMEL-7824) Camel manual throws some errors by opening in Safari or Firefox

2014-09-19 Thread Willem Jiang (JIRA)

 [ 
https://issues.apache.org/jira/browse/CAMEL-7824?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Willem Jiang resolved CAMEL-7824.
-
Resolution: Fixed

I just checked the generated html file, the error is gone.

 Camel manual throws some errors by opening in Safari or Firefox
 ---

 Key: CAMEL-7824
 URL: https://issues.apache.org/jira/browse/CAMEL-7824
 Project: Camel
  Issue Type: Bug
  Components: website
Affects Versions: 2.14.0
Reporter: Christian Müller
Assignee: Willem Jiang
 Fix For: 2.14.1, 2.15.0


 In Safari and Firefox, I got some errors by opening the Camel manual: 
 SyntaxHighlighter: Can't find brush for: py



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (CAMEL-7827) When using CXFRS with simple HTTP api, variable replacement should be available

2014-09-19 Thread Willem Jiang (JIRA)

 [ 
https://issues.apache.org/jira/browse/CAMEL-7827?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Willem Jiang resolved CAMEL-7827.
-
Resolution: Fixed

Applied the patch into camel master branch with thanks to François.

 When using CXFRS with simple HTTP api, variable replacement should be 
 available
 ---

 Key: CAMEL-7827
 URL: https://issues.apache.org/jira/browse/CAMEL-7827
 Project: Camel
  Issue Type: Improvement
  Components: camel-cxf
Reporter: François LAROCHE
Assignee: Willem Jiang
Priority: Minor
 Fix For: 2.15.0


 I am calling an endpoint using cxfrs client with the http api. So I have 
 something like that in the DSL : 
  
 .setHeader(CxfConstants.CAMEL_CXF_RS_USING_HTTP_API, constant(true)) 
 .setHeader(Exchange.HTTP_PATH, simple(/endpoint/${header.myHeader})) 
 .setHeader(Exchange.HTTP_METHOD, constant(POST)) 
 .to(cxfrs:bean:myClient) 
  
 This usually works fine. 
 I had a somewhat nasty error when someone did a copy paste of my server, 
 with the variable substitution style (something like /endpoint/{myVariable}) 
 at that point, ${header.myHeader} resolved to {myVariable}, thus the url the 
 client will try to resolve is  /endpoint/{myVariable}. When trying to parse 
 this URL, CXF will not be happy, since there is no value to replace what it 
 thinks to be a variable, and will throw an IllegalArgumentException with 
 message Unresolved variables; only 0 value(s) given for 1 unique 
 variable(s). 
 After looking a bit in the code, I understood better what happens. 
 In order to avoid that, it would be nice to use the mechanism of CXF to 
 replace variables in URI. 
 In the DSL, we would have something like : 
  
 .setHeader(CxfConstants.CAMEL_CXF_RS_USING_HTTP_API, constant(true)) 
 .setHeader(CxfConstants.CAMEL_CXF_RS_VAR_VALUES, 
 simple([${header.myHeader}])) 
 .setHeader(Exchange.HTTP_PATH, constant(/endpoint/{myVariable})) 
 .setHeader(Exchange.HTTP_METHOD, constant(POST)) 
 .to(cxfrs:bean:myClient) 
  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (CAMEL-7792) JIRA component

2014-09-19 Thread Willem Jiang (JIRA)

 [ 
https://issues.apache.org/jira/browse/CAMEL-7792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Willem Jiang reassigned CAMEL-7792:
---

Assignee: Willem Jiang

 JIRA component
 --

 Key: CAMEL-7792
 URL: https://issues.apache.org/jira/browse/CAMEL-7792
 Project: Camel
  Issue Type: New Feature
Reporter: Brett E. Meyer
Assignee: Willem Jiang
 Fix For: 2.15.0


 For Overlord (http://projectoverlord.io), we need to consume events from 
 JIRA, as well as produce actions. We're moving towards using Camel as a 
 backbone for various capabilities, and as such are writing the endpoint 
 functionality as new Camel components. I'd love to see this incorporated as 
 another mainline Camel component.
 Work in progress:
 https://github.com/brmeyer/camel-jira
 Consumer ideas:
 jira://newIssue (new tickets)
 jira://newComment (new comments on tickets)
 Producer ideas:
 jira://newComment (add comment to a ticket)
 Obviously, that's only a small portion of the capabilities. The JIRA API is 
 extensive and opens a large variety of possibilities.
 It uses the Atlassian's jira-rest-java-client SDK 
 (https://marketplace.atlassian.com/plugins/com.atlassian.jira.jira-rest-java-client),
  released under an Apache V2 license.
 Similar to what I did for camel-twitter, the Exchange payloads would be the 
 SDK-provided objects themselves (Issue, Comment, etc.)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (CAMEL-7364) JpaMessageIdRepository uses EntityManager non thread-safe

2014-09-19 Thread Olivier Sambourg (JIRA)

[ 
https://issues.apache.org/jira/browse/CAMEL-7364?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14140456#comment-14140456
 ] 

Olivier Sambourg commented on CAMEL-7364:
-

Will this fix be backported to Camel 2.13.x ? 2.14.x dropped Java 1.6 support 
so we're currently stuck with 2.10 (as 2.11/2.12/2.13 are impacted)
Thanks!

 JpaMessageIdRepository uses EntityManager non thread-safe
 -

 Key: CAMEL-7364
 URL: https://issues.apache.org/jira/browse/CAMEL-7364
 Project: Camel
  Issue Type: Bug
  Components: camel-jpa
Affects Versions: 2.12.3
 Environment: tomcat 7.0.32, hibernate 4.1.4.Final, spring 
 3.1.4.RELEASE
Reporter: Denis Galkin
Assignee: Claus Ibsen
 Fix For: 2.14.0


 In our product we have found strange behavior of JpaMessageIdRepository when 
 change version 2.9.2 to 2.12.3.
 The reason for this was that EntityManager assigned in the constructor 
 org.apache.camel.processor.idempotent.jpa.JpaMessageIdRepository, but
 EntityManager not required to be thread safe.
 http://download.oracle.com/otn-pub/jcp/persistence-2.0-fr-oth-JSpec/persistence-2_0-final-spec.pdf
  page 286.
 I think need assign the EntityManager in each method separately.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (CAMEL-7840) Upgrade to metrics 3.1

2014-09-19 Thread Claus Ibsen (JIRA)
Claus Ibsen created CAMEL-7840:
--

 Summary: Upgrade to metrics 3.1
 Key: CAMEL-7840
 URL: https://issues.apache.org/jira/browse/CAMEL-7840
 Project: Camel
  Issue Type: Task
  Components: camel-metrics
Reporter: Claus Ibsen
Assignee: Claus Ibsen
 Fix For: 2.15.0


There is a new release and they changed the mvn group id to dropwizard.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (CAMEL-7840) Upgrade to metrics 3.1

2014-09-19 Thread Claus Ibsen (JIRA)

 [ 
https://issues.apache.org/jira/browse/CAMEL-7840?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Claus Ibsen resolved CAMEL-7840.

Resolution: Fixed

 Upgrade to metrics 3.1
 --

 Key: CAMEL-7840
 URL: https://issues.apache.org/jira/browse/CAMEL-7840
 Project: Camel
  Issue Type: Task
  Components: camel-metrics
Reporter: Claus Ibsen
Assignee: Claus Ibsen
 Fix For: 2.15.0


 There is a new release and they changed the mvn group id to dropwizard.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (CAMEL-7841) Allow SpEL inside Camel {{properties}}

2014-09-19 Thread Marc Carter (JIRA)
Marc Carter created CAMEL-7841:
--

 Summary: Allow SpEL inside Camel {{properties}}
 Key: CAMEL-7841
 URL: https://issues.apache.org/jira/browse/CAMEL-7841
 Project: Camel
  Issue Type: Improvement
  Components: camel-spring
Affects Versions: 2.14.0
Reporter: Marc Carter


The test for {{BridgePropertyPlaceholderConfigurer}} shows a very unrealistic 
example of putting some SpEL into a camel variable. This requires pre-declaring 
every such spel expression as you instantiate the bridge. Essentaily the SpEL 
is only evaluated when directly in the Spring context refresh.

This bridge class can be ugraded to parse SpEL expressions dynamically as Camel 
requests properties allowing the usecases like:
{code}
.from(direct:dostuff)
.wireTap( file:#{@runtime.dataPath}?fileName=${date:now:MMdd}.txt )
{code}
In today's code the first part of URI cannot be paramterised.

I'll submit a PR via github with my solution and example tests.






--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CAMEL-7841) Allow SpEL inside Camel URIs

2014-09-19 Thread Marc Carter (JIRA)

 [ 
https://issues.apache.org/jira/browse/CAMEL-7841?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Marc Carter updated CAMEL-7841:
---
Summary: Allow SpEL inside Camel URIs  (was: Allow SpEL inside Camel 
{{properties}})

 Allow SpEL inside Camel URIs
 

 Key: CAMEL-7841
 URL: https://issues.apache.org/jira/browse/CAMEL-7841
 Project: Camel
  Issue Type: Improvement
  Components: camel-spring
Affects Versions: 2.14.0
Reporter: Marc Carter

 The test for {{BridgePropertyPlaceholderConfigurer}} shows a very unrealistic 
 example of putting some SpEL into a camel variable. This requires 
 pre-declaring every such spel expression as you instantiate the bridge. 
 Essentaily the SpEL is only evaluated when directly in the Spring context 
 refresh.
 This bridge class can be ugraded to parse SpEL expressions dynamically as 
 Camel requests properties allowing the usecases like:
 {code}
 .from(direct:dostuff)
 .wireTap( file:#{@runtime.dataPath}?fileName=${date:now:MMdd}.txt )
 {code}
 In today's code the first part of URI cannot be paramterised.
 I'll submit a PR via github with my solution and example tests.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)