AEM:如何在Sightly / HTL页面上找到Exception的位置?

时间:2017-02-27 00:05:56

标签: aem

我正在研究一个相当大的HTL页面,它正在抛出:

java.lang.IllegalArgumentException: Invalid property name

如何在HTL中找到引起此问题的位置?

更新

对于SO来说,完整的痕迹太大了。我把它保存在这里:http://pastebin.com/xajiY5MD

以下是前几行:

Invalid property name

Cannot serve request to /content/XXXX/en-us/cart.html in /apps/XXXXcommerce/components/content/cart/cart.html

Exception:
java.lang.IllegalArgumentException: Invalid property name
    at org.apache.sling.scripting.sightly.impl.utils.RenderUtils.getProperty(RenderUtils.java:151)
    at org.apache.sling.scripting.sightly.impl.utils.RenderUtils.resolveProperty(RenderUtils.java:143)
    at org.apache.sling.scripting.sightly.apps.XXXXcommerce.components.content.cart.SightlyJava_cart.render(SightlyJava_cart.java:512)
    at org.apache.sling.scripting.sightly.impl.engine.runtime.RenderUnit.render(RenderUnit.java:54)

2 个答案:

答案 0 :(得分:0)

当您使用的属性为: 1.未在对话框中定义 2.您以错误的方式使用它(检查双引号与单引号) 3.如果您使用的是java,那么java类中不存在该属性,并且您正在尝试访问它。

请检查并回答,如果不是这种情况和解决方案也不能帮助他人。

答案 1 :(得分:0)

使用空值索引数组时,显然会出现没有属性名称的

java.lang.IllegalArgumentException: Invalid property name(在我的情况下,包含索引的对象已超出范围)