Java 在xslt document()函数的字符串中使用单引号

Java 在xslt document()函数的字符串中使用单引号,java,xslt,Java,Xslt,我试图通过XSLT document()函数向URI解析器发送一个SQL字符串。当我在转换器中使用单引号时,它会失败。有人知道在这种情况下该用什么吗 下面是XSL文件中的代码 <xsl:variable name="findFEV" select="document('sql:select md from MenuData md where md.id=194003 and string01='David' and md.account = :account')"/> 这很合适。文

我试图通过XSLT document()函数向URI解析器发送一个SQL字符串。当我在转换器中使用单引号时,它会失败。有人知道在这种情况下该用什么吗

下面是XSL文件中的代码

<xsl:variable name="findFEV" select="document('sql:select md from MenuData md where md.id=194003 and string01='David' and md.account = :account')"/>
这很合适。文档调用需要双引号字符串,因为
'David'
必须使用单引号(SQL)


感谢@DanielHaley

因为没有好的
'David'
试试
\'David\'
-不确定。或
&apos;大卫&apos应该可以。@JoopEggen不可以。我已经试过了。这没用。你必须用
替换单引号(所以
&apos;David&apos;
)@DanielHaley我也会遇到同样的错误。16:28:13091错误[STDERR]javax.xml.transform.TransformerConfiguration异常:javax.xml.transform.TransformerException:org.xml.sax.SAXException:应为,但找到:David
15:59:12,165 ERROR [STDERR] javax.xml.transform.TransformerConfigurationException: javax.xml.transform.TransformerException: org.xml.sax.SAXException: Expected ,, but found: David
15:59:12,165 ERROR [STDERR] javax.xml.transform.TransformerException: Expected ,, but found: David
15:59:12,166 ERROR [STDERR]     at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:938)
15:59:12,167 ERROR [STDERR]     at org.apache.xalan.processor.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:776)
15:59:12,167 ERROR [STDERR]     at org.tolven.api.rs.resource.DataExtractResources.transform(DataExtractResources.java:109)
15:59:12,167 ERROR [STDERR]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
15:59:12,167 ERROR [STDERR]     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
15:59:12,168 ERROR [STDERR]     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
15:59:12,168 ERROR [STDERR]     at java.lang.reflect.Method.invoke(Method.java:606)
15:59:12,168 ERROR [STDERR]     at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$ResponseOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:186)
<xsl:variable name="findFEV"
select='document("sql:select md ... and string01=&apos;David&apos; and ...")'/>
document("sql:select md ... string01='David' and ...")