Missing system xslt in Sonic ESB Database Service

Posted by dhentche on 05-Jul-2009 23:26

Executing a Database Operation that previously succeeded, I am now getting the attached stack trace.The Database Service is trying to append results as XML into an existing XML message part. There doesn't seem to be anything wrong with the query, message input or Database Operation config.

I cannot see where the referenced style sheet exists in the install, perhaps it is dynamically generated.  Any quick fixes would be appreciated.

I have also attached the Workbench project. The failing process is ProcessBid/ProcessBid.esbp

Regards,

Dave

<?xml version="1.0"?>
<SOAP-ENV:Envelope SOAP-ENC:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
        xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope/ http://schemas.xmlsoap.org/soap/envelope"
        xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
        xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
        xmlns:xsd="http://www.w3.org/1999/XMLSchema"
        xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
        xmlns:rpc="http://www.sonicsw.com/sonicxq/rpc">
    <SOAP-ENV:Body>
        <xq:rejectedMessageInfo xmlns:xq="http://www.sonicsw.com/sonicxq">
            <rejectedCode>XQ_SERVICE_EXCEPTION</rejectedCode>
            <rejectedLocation container="dev_ESBCore" host="NBBEDDHENTCHE" process="ProcessBid" serviceApplication="dev.DBService" step="GetQuote" topLevelProcess="ProcessBid"/>
            <rejectedDetails>com.sonicsw.esb.service.rdbms.DatabaseServiceException: Service call failed.
    at com.sonicsw.esb.service.rdbms.DatabaseService.serviceConnection(DatabaseService.java:816)
    at com.sonicsw.esb.service.rdbms.DatabaseService.service(DatabaseService.java:707)
    at com.sonicsw.xqimpl.service.debug.DebugServiceInterceptor.intercept(DebugServiceInterceptor.java:118)
    at com.sonicsw.xqimpl.service.XQServiceChain$XQInterceptorServiceWrapper.intercept(XQServiceChain.java:481)
    at com.sonicsw.xqimpl.service.XQServiceChain$XQInterceptorServiceWrapper.service(XQServiceChain.java:470)
    at com.sonicsw.xqimpl.service.XQServiceChain.service(XQServiceChain.java:151)
    at com.sonicsw.xqimpl.service.ServiceMessageHandler.callService(ServiceMessageHandler.java:429)
    at com.sonicsw.xqimpl.service.ServiceMessageHandler.handleMessage(ServiceMessageHandler.java:190)
    at com.sonicsw.xqimpl.service.ProcessMessageHandler.doHandleMessage(ProcessMessageHandler.java:317)
    at com.sonicsw.xqimpl.service.ProcessMessageHandler.handleMessage(ProcessMessageHandler.java:94)
    at com.sonicsw.xqimpl.service.XQDispatcher.onMessage(XQDispatcher.java:422)
    at com.sonicsw.xqimpl.endpoint.container.EndpointContextContainer.onMessage(EndpointContextContainer.java:90)
    at com.sonicsw.xq.connector.jms.JMSEndpoint$JMSEndpointListener.onMessage(JMSEndpoint.java:575)
    at progress.message.jimpl.Session.deliver(Session.java:3006)
    at progress.message.jimpl.Session.run(Session.java:2397)
    at progress.message.jimpl.Session$SessionThread.run(Session.java:2782)
Caused by: com.sonicsw.xq.XQMessageException:  (Failed to compile stylesheet. 1 error detected.) (Failed to compile stylesheet. 1 error detected.)
    at com.sonicsw.xqimpl.script.InsertionRules$InsertLastChildRule.insert(InsertionRules.java:556)
    at com.sonicsw.xqimpl.script.InsertionRules.insertVariables(InsertionRules.java:90)
    at com.sonicsw.xqimpl.script.Command.insertVariables(Command.java:557)
    at com.sonicsw.xqimpl.script.Command.execute(Command.java:281)
    at com.sonicsw.xqimpl.script.ScriptEngine.executeCommand(ScriptEngine.java:66)
    at com.sonicsw.esb.service.rdbms.DatabaseService.serviceConnection(DatabaseService.java:771)
    ... 15 more
Caused by: javax.xml.transform.TransformerConfigurationException: Failed to compile stylesheet. 1 error detected.
    at net.sf.saxon.PreparedStylesheet.prepare(PreparedStylesheet.java:153)
    at net.sf.saxon.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:137)
    at net.sf.saxon.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:88)
    at com.sonicsw.xqimpl.util.xml.XMLUtils.computeXSLT(XMLUtils.java:285)
    at com.sonicsw.xqimpl.script.InsertionHelper.doTransform(InsertionHelper.java:310)
    at com.sonicsw.xqimpl.script.InsertionHelper.insertLastChild(InsertionHelper.java:149)
    at com.sonicsw.xqimpl.script.InsertionRules$InsertLastChildRule.insert(InsertionRules.java:542)
    ... 20 more
</rejectedDetails>
        </xq:rejectedMessageInfo>
    </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

IntroDemoESB_eclipse.zip

All Replies

Posted by Bill Wood on 11-Oct-2009 08:13

When you do an "Insert into XML", the internal code is using Saxon for this, and generating a stylesheet on the fly for the insertion. (i.e. there is no 'real' stylesheet in sonicfs).

Probably the issue here is that the insertion path is not pointing to an existing node.

This thread is closed