Hi everybody,
I have a problem with XSL transformations and I cannot reach a solution, maybe someone has a more clear view about this problem.
I've this XSL function to parse a date and transform it in the format I need, it is done via regular expressions:
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:my="my://own.uri">
...
<xsl:function name="my:date-formatx">
<xsl:param name="datexx" as="xs:string" />
<xsl:analyze-string select="$datexx" regex="(\d{{4}})-(\d{{2}})-(\d{{2}})(\s*)">
<xsl:matching-substring>
<xsl:variable name="grupo1"><xsl:value-of select="regex-group(1)"/></xsl:variable>
<xsl:variable name="grupo2"><xsl:value-of select="regex-group(2)"/></xsl:variable>
<xsl:variable name="grupo3"><xsl:value-of select="regex-group(3)"/></xsl:variable>
<xsl:value-of select="concat($grupo1, $grupo2, $grupo3)"/>
</xsl:matching-substring>
</xsl:analyze-string>
</xsl:function>
...
I´ve tried, doing it with SmooksAction, Smooks Transformer, doing the XSL transformation nativelly from the ESB with the code I found here: http://www.jboss.org/community/docs/DOC-10336, and my last try was using the same code but with SAXON Transformer insteand of javax.xml.transform.Transformer, and I get the same error for all.
I've another project only with Smooks and the entire XSL transformation is executed correctly there, but now, when I put it into an ESB action I get that the function "regex-group" is not defined.
Here's the exception: ("No se ha podido encontrar la funcižn: regex-group" is "Unable to find the function: regex-group" in spanish :)
org.jboss.soa.esb.actions.ActionProcessingException: javax.xml.transform.TransformerConfigurationException: javax.xml.transform.TransformerException: javax
.xml.transform.TransformerException: No se ha podido encontrar la funcižn: regex-group
at nativeXSL.XSLActionProcessor.process(XSLActionProcessor.java:90)
at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.process(ActionProcessingPipeline.java:316)
at org.jboss.soa.esb.listeners.message.MessageAwareListener$TransactionalRunner.run(MessageAwareListener.java:530)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
at java.lang.Thread.run(Thread.java:595)
Caused by: javax.xml.transform.TransformerConfigurationException: javax.xml.transform.TransformerException: javax.xml.transform.TransformerException: No se
ha podido encontrar la funcižn: regex-group
at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:936)
at org.apache.xalan.processor.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:774)
at nativeXSL.SAXONTransformer.transform(SAXONTransformer.java:25)
at nativeXSL.XSLActionProcessor.process(XSLActionProcessor.java:83)
... 5 more
Caused by: javax.xml.transform.TransformerException: javax.xml.transform.TransformerException: No se ha podido encontrar la funcižn: regex-group
at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:928)
... 8 more
Caused by: javax.xml.transform.TransformerException: No se ha podido encontrar la funcižn: regex-group
at org.apache.xalan.processor.XSLTAttributeDef.processEXPR(XSLTAttributeDef.java:768)
at org.apache.xalan.processor.XSLTAttributeDef.processValue(XSLTAttributeDef.java:1404)
at org.apache.xalan.processor.XSLTAttributeDef.setAttrValue(XSLTAttributeDef.java:1600)
at org.apache.xalan.processor.XSLTElementProcessor.setPropertiesFromAttributes(XSLTElementProcessor.java:338)
at org.apache.xalan.processor.XSLTElementProcessor.setPropertiesFromAttributes(XSLTElementProcessor.java:263)
at org.apache.xalan.processor.ProcessorTemplateElem.startElement(ProcessorTemplateElem.java:76)
at org.apache.xalan.processor.StylesheetHandler.startElement(StylesheetHandler.java:623)
at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:920)
... 8 more
23:07:26,389 WARN [ActionProcessingPipeline] No fault address defined for fault message! To: JMSEpr [ PortReference < <wsa:Address jms://127.0.0.1:1099/qu
eue/eclipse_quickstart_helloworld_Request_esb/>, <wsa:ReferenceProperties jbossesb:java.naming.factory.initial : org.jnp.interfaces.NamingContextFactory/>,
<wsa:ReferenceProperties jbossesb:java.naming.provider.url : jnp://127.0.0.1:1099/>, <wsa:ReferenceProperties jbossesb:java.naming.factory.url.pkgs : org.
jboss.naming:org.jnp.interfaces/>, <wsa:ReferenceProperties jbossesb:destination-type : queue/>, <wsa:ReferenceProperties jbossesb:specification-version :
1.1/>, <wsa:ReferenceProperties jbossesb:connection-factory : ConnectionFactory/>, <wsa:ReferenceProperties jbossesb:persistent : true/>, <wsa:ReferencePro
perties jbossesb:acknowledge-mode : AUTO_ACKNOWLEDGE/>, <wsa:ReferenceProperties jbossesb:transacted : false/>, <wsa:ReferenceProperties jbossesb:type : ur
n:jboss/esb/epr/type/jms/> > ] MessageID: d129eb42-285b-4cf6-89d0-e1fbdf6bb009 RelatesTo: jms:correlationID#d129eb42-285b-4cf6-89d0-e1fbdf6bb009
Any ideas?
Thanks!
--
Atte.
A/C Pablo Pazos Gutierrez
http://www.simplewebportal.net
http://pablo.swp.googlepages.com/home