This discussion is archived
5 Replies Latest reply: May 30, 2013 1:11 AM by viktor.jarolim RSS

Help with logging

Vishwajet Newbie
Currently Being Moderated
Hi All,
I want to log the xml after being accepted by ORR and transformed by the transformation xquery. When I am trying to get the same in nohup of weblogic it is throwing the following error.
Error at external variable declaration on line 34 of module with no systemId:
XPDY0002: No value supplied for required parameter $log
<20-Mar-2013 7:33:31,676 GMT AM> <ERROR> <rule.XQueryHelper> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <No value supplied for required parameter $log. . File[*module with no systemId* (actual location resolved to [*module with no systemId*])] Line[34] Column[-1]
[
]
>
; SystemID: module with no systemId; Line#: 34; Column#: -1
net.sf.saxon.trans.XPathException: No value supplied for required parameter $log
at net.sf.saxon.instruct.GlobalParam.evaluateVariable(GlobalParam.java:49)

The xquery is like below:-

import module namespace datarule="http://xmlns.oracle.com/xquery/datarule" at "http://xmlns.oracle.com/communications/ordermanagement/som/datanetworking/1.0.0/Library/DataRuleLib.xquery";

declare namespace provord = "http://xmlns.oracle.com/EnterpriseObjects/Core/EBO/ProvisioningOrder/V1";
declare namespace corecom = "http://xmlns.oracle.com/EnterpriseObjects/Core/Common/V2";
declare namespace oms = "pip:urn:com:metasolv:oms:xmlapi:1";
declare namespace prov = "http://xmlns.oracle.com/communications/ordermanagement";
declare namespace customprovord = "http://xmlns.oracle.com/EnterpriseObjects/Core/Custom/EBO/ProvisioningOrder/V1";
declare namespace orderActivity = "java:oracle.communications.ordermanagement.log.LogOrderActivity";
declare namespace context      = "java:com.mslv.oms.automation.TaskContext";
declare namespace log = "java:org.apache.commons.logging.Log";
declare namespace saxon = "http://saxon.sf.net/";

declare namespace xsl = "http://www.w3.org/1999/XSL/Transform";

(: variables :)
declare variable $automator external;
declare variable $context external;
declare variable $log external; (:line 34:)
.
.
.
let $ebm := //provord:ProcessProvisioningOrderEBM
let $dataArea := $ebm/provord:DataArea
let $provisioningOrder := $ebm/provord:DataArea/provord:ProcessProvisioningOrder
let $request := local:transformOrderData($ebm, $dataArea, $provisioningOrder)
let $requestStr := saxon:serialize($request, <xsl:output method='xml' omit-xml-declaration='yes' indent='yes' saxon:indent-spaces='4'/>)

return (
     log:info($log, " XML: "),
log:info($log, $requestStr),
     $request
)

Basically I want to log $requestStr.

Many Thanks

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points