我下载并安装了JDeveloper 11.1.2.3.0(我没有许可证。我只是想使用ADF进行演示应用程序,我不会将其用于商业用途)
然后我做了以下Oracle教程(使用EJB,JPA和JavaServer Faces构建Web应用程序): http://docs.oracle.com/cd/E18941_01/tutorials/jdtut_11r2_51/jdtut_11r2_51_2.html
在第3步:运行并测试页面,我在JDeveloper Log上获得以下内容:
<ViewHandlerImpl> <_checkTimestamp> Apache Trinidad is running with time-stamp checking enabled. This should not be used in a production environment. See the org.apache.myfaces.trinidad.CHECK_FILE_MODIFICATION property in WEB-INF/web.xml
<11.01.2013 18:25:26 ALMT> <Notice> <EclipseLink> <BEA-2005000> <2013-01-11 18:25:26.552--ServerSession(14553247)--EclipseLink, version: Eclipse Persistence Services - 2.1.3.v20110304-r9073>
<11.01.2013 18:25:26 ALMT> <Notice> <EclipseLink> <BEA-2005000> <2013-01-11 18:25:26.557--ServerSession(14553247)--Server: 10.3.5.0>
<MessageFactory> <getMessage>
java.lang.IllegalStateException
at oracle.jbo.uicli.binding.JUSearchBindingCustomizer.getViewCriteria(JUSearchBindingCustomizer.java:1980)
at oracle.adfinternal.view.faces.model.binding.FacesCtrlSearchBinding$QueryDescriptorImpl.getFilterCriteria(FacesCtrlSearchBinding.java:1325)
at oracle.adfinternal.view.faces.renderkit.rich.table.BaseColumnRenderer._getFilterCriteria(BaseColumnRenderer.java:1871)
at oracle.adfinternal.view.faces.renderkit.rich.table.BaseColumnRenderer._renderFilterField(BaseColumnRenderer.java:1755)
at oracle.adfinternal.view.faces.renderkit.rich.table.BaseColumnRenderer.renderColumnFilterCell(BaseColumnRenderer.java:1206)
at oracle.adfinternal.view.faces.renderkit.rich.table.BaseColumnRenderer.encodeAll(BaseColumnRenderer.java:163)
at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1452)
at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:511)
at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
...
这是我的web.xml(org.apache.myfaces.trinidad.CHECK_FILE_MODIFICATION部分)
<context-param>
<description>If this parameter is true, there will be an automatic check of the modification date of your JSPs, and saved state will be discarded when JSP's change. It will also automatically check if your skinning css files have changed without you having to restart the server. This makes development easier, but adds overhead. For this reason this parameter should be set to false when your application is deployed.</description>
<param-name>org.apache.myfaces.trinidad.CHECK_FILE_MODIFICATION</param-name>
<param-value>false</param-value>
</context-param>
该值为false。我试图切换到true,但它仍然给我同样的错误。
如何解决这个问题?
答案 0 :(得分:1)
您正在查看错误的讯息。 问题是这个 - java.lang.IllegalStateException 在oracle.jbo.uicli.binding.JUSearchBindingCustomizer.getViewCriteria(JUSearchBindingCustomizer.java:1980)
不完全确定问题是什么,如果您澄清教程的哪个阶段,您可能会收到此错误。