java – xsl变量初始化,方法没有被调用
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – xsl变量初始化,方法没有被调用,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2179字,纯文字阅读大概需要4分钟。
内容图文
![java – xsl变量初始化,方法没有被调用](/upload/InfoBanner/zyjiaocheng/732/64b03af7004d4814ab189dfdf880199a.jpg)
我是xslt的新手并且有一个问题.
我有一个包含所有必要的setter和getter的validate类.例如它有这样的方法:
public void setProducer(String producer) {
this.producer = producer;
System.out.println("TEST");
}
当我启动我的应用程序时,我看到没有调用此方法.
我只在控制台中看到我的测试消息,当我在我的xsl文件中添加这样的代码时:
<xsl:value-of name="producerName" />
那么我的错误或xsl:variable在首次使用时初始化的位置是什么?
我有这个代码:
<xsl:param name="category-name" />
<xsl:param name="subcategory-name" />
<xsl:param name="producer" />
<xsl:param name="model" />
<xsl:param name="color" />
<xsl:param name="date_of_issue" />
<xsl:param name="price" />
<xsl:param name="not_in_stock" />
<xsl:variable name="validator" select="validation:new()" />
<xsl:template match="/">
<xsl:for-each select="products/category">
<xsl:if test="name() = 'category' and @name=$category-name">
<xsl:apply-templates select="subcategory[@name=$subcategory-name]" />
</xsl:if>
</xsl:for-each>
</xsl:template>
<xsl:template match="subcategory">
<xsl:apply-templates select="good" />
<xsl:variable name="errorSize"
select="validation:getErrorListSize($validator)" />
<xsl:if test="$errorSize = 0">
<xsl:variable name="producerName"
select="validation:setProducer($validator, $producer)" />
<xsl:variable name="setModel"
select="validation:setModel($validator, $model)" />
<xsl:variable name="setColor"
select="validation:setColor($validator, $color)" />
<xsl:variable name="setDateOfIssue"
select="validation:setDateOfIssue($validator, $date_of_issue)" />
<xsl:if test="$not_in_stock != null">
<xsl:variable name="setPrice"
select="validation:setPrice($validator, $price)" />
</xsl:if>
<xsl:variable name="validationResult"
select="validation:validateAllFields($validator)" />
VALIDATION FINISHED
<xsl:variable name="errors"
select="validation:getErrorListSize($validator)" />
<xsl:value-of select="$errors"/>
</xsl:if>
<xsl:if test="$errorSize != 0">
REDIRECT. ERROR EXISTS
</xsl:if>
</xsl:template>
解决方法:
一些XSLT处理器(如Saxon)使用延迟评估,因此不会对变量进行评估,直到实际需要它为止.
所以,你没有使用这种方法,还有其他可能的方法来调用方法.
如果变量在xsl文档中无用,请改用以下内容:
<xsl:value-of select="validation:setProducer($validator, $producer)"/>
内容总结
以上是互联网集市为您收集整理的java – xsl变量初始化,方法没有被调用全部内容,希望文章能够帮你解决java – xsl变量初始化,方法没有被调用所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。