On Thu, Oct 18, 2012 at 11:21 AM, Sergey Beryozkin <[email protected]>wrote:
> Hi Andrei > On 18/10/12 16:05, Andrei Shakirin wrote: > >> Hi, >> >> Actually CXF Transformation feature covers 99% of user needs: >> 1) changing input and output element names and namespaces >> 2) appending new input and output elements >> 3) replacing text content >> 4) dropping output and input elements >> 5) converting attributes to elements >> >> Anyway I see some advanced use cases not supported by CXF Transformation >> feature, like: >> 1) replace/rename attributes; >> 2) replace/remove attributes values >> 3) replace text on the base of regular expressions >> 4) process lists >> etc. >> >> My proposal is to add property for Transformation feature that specified >> XSLT transformation script to support such advanced use cases. >> It will look like: >> <bean id="transformFeature" class="org.apache.cxf.feature.** >> StaxTransformFeature"> >> <property name="inXSLT" value="/org/test/my-in.xslt"/> >> <property name="outXSLT" value="/org/test/my-out.xslt"/**> >> </bean> >> >> XSLT engine Xalan will probably break the streaming (AFAIK is still load >> tree into memory, incremental transformation just do it in optimized >> parallel way). But for small messages is still an option and looking >> forward - probably clean stream oriented XSLT will be supported in the >> future. >> >> I have basic implementation and will provide a patch, if the improvement >> makes sense >> (https://issues.apache.org/**jira/browse/CXF-4582<https://issues.apache.org/jira/browse/CXF-4582>). >> >> I think it would sense to come up with a standalone XSLTFeature which > would be much simpler, implementation wise, compared to > StaxTransformFeature, which is really a light-weight alternative to XSLT > itself. > Yes, please! I would like to be able express this, which I currently do with funky hard to maintain interceptors: validate input vs. XSD 1 apply XSLT 1 validate transformed input vs. XSD 2 validate output vs. XSD 3 apply XSLT 2 validate transformed output vs. XSD 4 Gary > Cheers, Sergey > > Regards, >> Andrei. >> >> > > -- > Sergey Beryozkin > > Talend Community Coders > http://coders.talend.com/ > > Blog: http://sberyozkin.blogspot.com > -- E-Mail: [email protected] | [email protected] JUnit in Action, 2nd Ed: <http://goog_1249600977>http://bit.ly/ECvg0 Spring Batch in Action: <http://s.apache.org/HOq>http://bit.ly/bqpbCK Blog: http://garygregory.wordpress.com Home: http://garygregory.com/ Tweet! http://twitter.com/GaryGregory
