变量无法毫无例外地到达

时间:2013-05-21 06:38:56

标签: java jsf glassfish

我有一个非常奇怪的问题,在localhost上工作的经典而不是服务器。

我试图找到一个更大的问题并发现这段代码:

 <div class="pageHeader"><h1>Products2   #{products.debug}  </h1></div>

何时:

@ManagedBean(name="products")
@SessionScoped
public class ProductsBean {
private String debug = "Debug : ";

public ProductsBean() {
    debug = "Debug : ";
}
public String getDebug() {
    return debug;
}

public void setDebug(String debug) {
    this.debug = debug;
}

debug字符串有getter / setters,

在localhost中完美运行,但在远程无法运行。在远程服务器中它根本不回显字符串,并且没有抛出异常,我不知道如何开始寻找问题。问题是这个问题以其他方式重复出现,例如,这个页面有一个dataTable,它显示为空,尽管它不在localhost中。当我在一个完整的不同页面上尝试上传文件时,我得到了Target Unreachable, identifier resolved to null的例外,这不是本例中的问题,但它似乎与某种方式相关我估计

有任何帮助吗?我使用Oracle GlassFish在Oracle Linux Server上运行

2 个答案:

答案 0 :(得分:0)

问题出在这里。

Target Unreachable, identifier 'loadSimCards' resolved to null

我相信#loadSimCards在处理期间解析为null。 该对象未在您的bean中创建/预先填充。

检查代码并验证是否确实填充了代码。 如果您仍然遇到问题,可以发布Java代码。

还要检查faces-config.xml

中的beans.xml文件和声明

参考 - JEE CDI tip: Target Unreachable, identifier resolved to null

答案 1 :(得分:-1)

我脑海中的第一步是做一个右键点击 - &gt;在浏览器中查看源代码并告诉我们它显示的内容。在视图源中,如果字符串“#{products.debug}未被打印,则表示服务器确实正在评估EL表达式,但在呈现时它将作为空字符串。

  • 你能否提供实际的吸气剂/装定者。
  • 您可以在其中放置记录器/ SOP,并告诉我们是否正在调用它们以及按照什么顺序进行调用。
  • 将纯EL表达式替换为数据绑定控件,如h:inputText,看看会发生什么。

    &LT; h:inputText value =“#{products.debug}”/&gt;

  • 可能不相关,但你有&lt; base /&gt;标题在头部中的页面中声明?基本标记href提供加载子资源的位置。我在移动服务器时看到了一些异常行为,当主页从远程加载而子资源从开发人员盒上的本地主机本身加载时,因为忘记更改基本标记引用。