WSO2 ESB4.0.3无法使用XQUery

WSO2 ESB4.0.3无法使用XQUery,wso2,xquery,wso2esb,Wso2,Xquery,Wso2esb,在ESB4.0.0中,我可以像这样使用XQuery: xquery key="conf:/closeUserRequest_xq" variable xmlns:ns="http://service.jscn.coship.com/" xmlns:s="http://www.w3.org/2003/05/soap-envelope" name="closeUser1" expression="//p:closeUser/userId" type="DOCUMENT"/>xque

在ESB4.0.0中,我可以像这样使用XQuery:

xquery key="conf:/closeUserRequest_xq" variable 
xmlns:ns="http://service.jscn.coship.com/"   
xmlns:s="http://www.w3.org/2003/05/soap-envelope" 
name="closeUser1" 
expression="//p:closeUser/userId" type="DOCUMENT"/>xquery
但当我升级到ESB4.0.3时,使用以下错误:

[2012-04-21 11:31:53,342] ERROR - XQueryMediator Unable to execute the query
java.lang.NullPointerException at 
org.wso2.carbon.mediation.registry.WSO2Registry.lookup(WSO2Registry.java:177) at 
org.apache.synapse.registry.AbstractRegistry.getResource(AbstractRegistry.java:63) at 
org.apache.synapse.config.SynapseConfiguration.getEntry(SynapseConfiguration.java:693)at 
org.apache.synapse.core.axis2.Axis2MessageContext.getEntry(Axis2MessageContext.java:194)at 
org.apache.synapse.mediators.xquery.XQueryMediator.performQuery(XQueryMediator.java:233)

您的Xquery脚本在注册表中可用吗?检查注册表路径是否正确。

您的Xquery脚本在注册表中可用吗?检查注册表路径是否正确。

我不知道是否可用。但是相同的注册表可以在ESB4.0.0中工作。您能告诉我4.0.3中的正确注册表路径是什么吗?请转到您的注册表浏览器,并在配置注册表中检查脚本是否可用,谢谢。我认为注册表路径是正确的。我在同一路径中添加了xslt。它可以工作。XQuery也可以在4.0.0中工作。我不知道为什么不能在4.0.3中使用。我的XQuery是:将函数xf:closeUserRequest($message1作为节点())声明为元素(){let$message:=$message1返回{$message/p:cycleIndex/text()}};将变量$message1声明为node()外部变量;我已经解决了这个问题。在4.0.3中,必须设置“媒体类型”值“XQuery”,我不知道是否可用。但是相同的注册表可以在ESB4.0.0中工作。您能告诉我4.0.3中的正确注册表路径是什么吗?请转到您的注册表浏览器,并在配置注册表中检查脚本是否可用,谢谢。我认为注册表路径是正确的。我在同一路径中添加了xslt。它可以工作。XQuery也可以在4.0.0中工作。我不知道为什么不能在4.0.3中使用。我的XQuery是:将函数xf:closeUserRequest($message1作为节点())声明为元素(){let$message:=$message1返回{$message/p:cycleIndex/text()}};将变量$message1声明为node()外部变量;我已经解决了这个问题。在4.0.3中,必须设置“媒体类型”值“XQuery”