Java JSF1.1和MyFaces战斧1.1.9
我正在尝试使用Myfaces Tomahawk中的日历组件。我正在使用Tomahawk 1.1.9和WebSphere6.1运行JSF1.1。 看起来JSF1.1和Tomahawk 1.1.9不兼容,因为以下代码不起作用-Java JSF1.1和MyFaces战斧1.1.9,java,jsf,tomahawk,Java,Jsf,Tomahawk,我正在尝试使用Myfaces Tomahawk中的日历组件。我正在使用Tomahawk 1.1.9和WebSphere6.1运行JSF1.1。 看起来JSF1.1和Tomahawk 1.1.9不兼容,因为以下代码不起作用- <t:inputCalendar id="secondOne" monthYearRowClass="yearMonthHeader" weekRowClass="weekHeader" popupButtonStyleClass="standard_bold"
<t:inputCalendar id="secondOne" monthYearRowClass="yearMonthHeader"
weekRowClass="weekHeader" popupButtonStyleClass="standard_bold"
currentDayCellClass="currentDayCell" value="#{dobBean.dateOfBirth}"
renderAsPopup="true" popupTodayString="Shamik"
popupDateFormat="MM/dd/yyyy" popupWeekString="Wk"
helpText="MM/DD/YYYY" forceId="true" />
当通过IE7访问此jsp页面时,它会引发一些javascript问题,如未定义PopupCalendar。我发现在呈现的HTML页面中添加了java脚本,但不知道为什么会出现这个问题
知道JSF1.1应该使用哪个版本的Tomahawk吗
编辑:
我已经在web.xml文件中配置了扩展名筛选器。像这样的-
<filter>
<filter-name>MyFacesExtensionsFilter</filter-name>
<filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>MyFacesExtensionsFilter</filter-name>
<!-- servlet-name must match the name of your javax.faces.webapp.FacesServlet entry -->
<servlet-name>Faces Servlet</servlet-name>
</filter-mapping>
<filter-mapping>
<filter-name>MyFacesExtensionsFilter</filter-name>
<url-pattern>/faces/myFacesExtensionResource/*</url-pattern>
</filter-mapping>
MyFaceXtensionsFilter
org.apache.myfaces.webapp.filter.ExtensionsFilter
MyFaceXtensionsFilter
Facesservlet
MyFaceXtensionsFilter
/faces/myFacesExtensionResource/*
战斧同时兼容JSF1.1和1.2(目前还不兼容JSF2.0)。您描述的问题可以识别为未在web.xml
中正确配置。尽管javadocs声明自从Tomahawk 1.1.7以来不再需要它,但我还是会尝试一下。只需根据定义web.xml
中的ExtensionFilter
。它负责在响应中注入必要的脚本/样式
<filter>
<filter-name>MyFacesExtensionsFilter</filter-name>
<filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>MyFacesExtensionsFilter</filter-name>
<!-- servlet-name must match the name of your javax.faces.webapp.FacesServlet entry -->
<servlet-name>Faces Servlet</servlet-name>
</filter-mapping>
MyFaceXtensionsFilter
org.apache.myfaces.webapp.filter.ExtensionsFilter
MyFaceXtensionsFilter
Facesservlet
我今天找到了这个问题的解决方案。这与WebSphere6.1有关。我发现下面的例子,人们面临着和我一样的问题。
正如上面的链接中所提到的,我在WebSphereContainer中添加了一个自定义属性com.ibm.ws.webcontainer.invokefilterscompatibility=true,方法如下 我在web.xml文件中有扩展名过滤器。我可以看到生成的html中有javascript,但它仍然不工作。看起来与WebSphere有关。+1:你完全正确,这是WebSphere的问题。事实上,我已经知道这个特别的问题,我以前在其他论坛上看过/读过它,但不幸的是,当我读到你的问题时,我没有立即意识到/回忆起这一点。顺便说一句,你可以自由发布和接受自己的答案。