标签: jsf-2

f:convertDateTime显示错误的日期

在我的Web应用程序中,我使用Hibernate检索数据并将其显示在RichFaces dataTable中.

在我的MySQL表中有一个类型为"date"的字段.当我将此字段打印到我的Bean中的日志时,它会显示数据库中的正确日期(例如2010-04-21).但在富人:dataTable中,它显示如下:

一零年四月二十零日

所以有一天的差异!

我添加了"f:convertDateTime"转换器并将"type"属性设置为"both"以便显示时间.现在它显示:

4/20/10 10:00:00 PM

我用过的"f:convertDateTime"代码:

<f:convertDateTime locale="locale.US" type="both" dateStyle="short"/>
Run Code Online (Sandbox Code Playgroud)

所以看起来像f:convertDateTime梦想有一段时间,因为MySQL-table字段中没有时间信息!

我究竟做错了什么?要显示正确的日期,我需要做什么?

谢谢汤姆

java jsf hibernate richfaces jsf-2

48
推荐指数
3
解决办法
6万
查看次数

Mojarra和MyFaces之间的区别

我开始使用JSF2.0我使用了一个教程作为参考,但我有以下问题:

本教程只使用2个库:jsf-api.jar,jsf-impl.jar(但也有JSTL)从钻嘴鱼科项目.

我试图下载它们但似乎网站无法访问.所以我使用Apache MyFaces,但运行示例我必须添加8个罐子(commons-*,myfaces-*).
如果我使用MyFaces,为什么还需要更多的罐子?我是否应该更喜欢Mojarra?下载页面确实是JSF Mojarra

谢谢

jsf myfaces jsf-2 mojarra

48
推荐指数
4
解决办法
5万
查看次数

如何在JSF 2中处理会话过期和ViewExpiredException?

请考虑以下情形.在会话超时(过期)后,我点击了JSF表单的提交按钮.浏览器显示一些异常消息:

ViewExpiredException:无法恢复视图上下文

我想要做的是,在会话过期后自动重定向到网站的主页.这样做的机制是什么?任何帮助将非常感激.

jsf session-timeout jsf-2 viewexpiredexception

47
推荐指数
1
解决办法
8万
查看次数

添加<h:form>会导致java.lang.IllegalStateException:在提交响应后无法创建会话

添加后,我在一个非常简单的JSF 2页面中面临以下异常<h:form>:

java.lang.IllegalStateException: Cannot create a session after the response has been committed
    at org.apache.catalina.connector.Request.doGetSession(Request.java:2758)
    at org.apache.catalina.connector.Request.getSession(Request.java:2268)
Run Code Online (Sandbox Code Playgroud)

我在Tomcat 7.0.22和JDK 7上使用Mojarra 2.1.3和PrimeFaces3.0M4.

该页面是一个非常基本的数据表:

<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:p="http://primefaces.org/ui">
<h:head>

</h:head>
<h:body>
    <h:form>        
        <p:dataTable var="car" value="#{tableBean.cars}">

                 ......
        </p:dataTable>
    </h:form>
</h:body>
</html>
Run Code Online (Sandbox Code Playgroud)

页面在浏览器上正确显示,但在控制台上我看到了异常.如果我删除了,Exception确实会消失<h:form>.

这是怎么造成的,我该如何解决?

forms session jsf jsf-2 illegalstateexception

47
推荐指数
2
解决办法
6万
查看次数

如何在JSF中实现登录过滤器?

即使用户知道某些页面的URL,我也想阻止访问某些页面.例如,/localhost:8080/user/home.xhtml(需要先登录)如果没有记录则重定向到/index.xhtml.

在JSF中如何做到这一点?我在Google上读到需要过滤器,但我不知道该怎么做.

jsf authorization login jsf-2 servlet-filters

47
推荐指数
1
解决办法
6万
查看次数

org.hibernate.AssertionFailure:条目中的null id(发生异常后不刷新会话)

我有一个hibernate和JSF2应用程序进入部署服务器并突然在异常中抛出org.hibernate.AssertionFailure:null id.我将立即提供堆栈跟踪和代码,但这里首先是四个重要问题:

  1. 这只发生在部署服务器上(在Windows Sever 2008上运行的Jboss和MySql).它不会发生在我的开发机器上(在Windoes 7 Pro上运行的Tomcat和MySql),也不会发生在暂存环境中(在Linux上运行的Jboss和MySql) .)

  2. 研究这个,似乎人们在尝试插入对象时会出现此错误.但是当我做一个简单的查询时,我得到了错误.(实际上,各种不同的查询随机地在几个页面上弹出错误.)

  3. 错误只会偶尔出现.如果我做Jboss重启它会消失,但一段时间后会返回.此外,它不一致,有些点击它在那里,而其他人则没有.即使它命中,当我对页面进行简单的刷新时它也会返回.

  4. 我正在使用c3p0(下面的配置)

知道发生了什么事吗?

代码详情:

这发生在地址对象上.这是完整的hbm:

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.idex.auctions.model">
<class name="Address" table="address" lazy="true">
  <id name="addressID" column="AddressID">
        <generator class="native"/>            
  </id>

  <property name="street" column="street"/> 
  <property name="city" column="city"/> 
  <property name="zip" column="zip"/> 
  <property name="state" column="state"/> 
  <property name="region" column="region"/> 
  <property name="country" column="country"/> 

  <many-to-one name="user" 
       class="com.idex.auctions.model.User" 
       column="userid" 
       unique="true" 
       cascade="save-update"/>
 </class> 
</hibernate-mapping>
Run Code Online (Sandbox Code Playgroud)

Java类是直截了当的:

public class Address implements Serializable {
private static final long serialVersionUID = 7485582614444496906L;

private long addressID;
private …
Run Code Online (Sandbox Code Playgroud)

mysql windows jboss hibernate jsf-2

47
推荐指数
4
解决办法
7万
查看次数

何时使用f:view和f:subview

我不确定使用<f:view>和有什么好处<f:subview>.我注意到可以在不使用它们的情况下编写JSF页面.

使用这些标签有什么好处?

view facelets subview jsf-2

46
推荐指数
1
解决办法
5万
查看次数

在JSF中按ID查找组件

我想UIComponent通过我提供的id从托管bean中找到一些.

我写了以下代码:

private UIComponent getUIComponent(String id) {  
      return FacesContext.getCurrentInstance().getViewRoot().findComponent(id) ;  
}
Run Code Online (Sandbox Code Playgroud)

我已经定义了一个p:inputTextarea:

<p:inputTextarea id="activityDescription" value="#{adminController.activityDTO.activityDescription}" required="true" maxlength="120"
    autoResize="true" counter="counter" counterTemplate="{0} characters remaining." cols="80" rows="2" />
Run Code Online (Sandbox Code Playgroud)

现在,如果在getUIComponent("activityDescription")返回方法时调用该方法null,但如果我将其调用,getUIComponent("adminTabView:activityForm:activityDescription")那么我可以获取该org.primefaces.component.inputtextarea.InputTextarea实例.

有没有办法让组件只有id,即"activityDescription"不是绝对id,即"adminTabView:activityForm:activityDescription"?

jsf uicomponents primefaces jsf-2

46
推荐指数
1
解决办法
9万
查看次数

Ajax更新/呈现不适用于具有呈现属性的组件

我正在尝试ajax更新有条件渲染的组件.

<h:form>
    ...
    <h:commandButton value="Login" action="#{login.submit}">
        <f:ajax execute="@form" render=":text" />
    </h:commandButton>
</h:form>
<h:outputText id="text" value="You're logged in!" rendered="#{not empty user}" />
Run Code Online (Sandbox Code Playgroud)

但是,这不起作用.我可以保证这#{user}实际上是可用的.这是怎么造成的,我该如何解决?

jsf rendered-attribute jsf-2 conditional-rendering ajax-update

46
推荐指数
1
解决办法
5万
查看次数

<p:ajax>事件列表

我搜索过互联网,但找不到<p:ajax>活动清单.任何人都可以提供<p:ajax>标签的完整事件列表吗?

如果有onblur事件或类似事件我特别感兴趣.

ajax jsf primefaces jsf-2

45
推荐指数
5
解决办法
20万
查看次数