标签: facelets

有时我看到JSF URL是*.jsf,有时是*.xhtml,有时是/ faces/*.为什么?

一直试着学习JSF,有时候我看到的URL *.jsf有时是*.xhtml或者/faces/*.请问有人填写我的知识吗?当我使用Facelet创建JSF时,文件扩展名是.xhtml,所以.jsfURL扩展来自哪里?

jsf web.xml facelets url-pattern

57
推荐指数
1
解决办法
4万
查看次数

从JSF页面获取请求和会话参数和属性

我正在使用带有facelets的JSF,我需要在JSF页面中获取请求和会话参数.在JSP页面中,我得到了这样的参数:"${requestScope.paramName}""${sessionScope.paramName}".但是现在使用JSF之后只有bean,除了bean属性之外你无法获得任何值.

注意:会话属性我需要使用acegi安全性自动填充,因此我无法访问它们.

那现在该怎么办?

session jsf facelets request

53
推荐指数
6
解决办法
23万
查看次数

如何在Facelets模板中引用CSS/JS /图像资源?

我已经完成了关于Facelets模板的教程.

现在我尝试创建一个与模板不在同一目录中的页面.我有页面样式的问题,因为样式用相对路径引用,如下所示:

<link rel="stylesheet" href="style_resource_path.css" />
Run Code Online (Sandbox Code Playgroud)

我可以通过以下开头使用绝对引用/:

<link rel="stylesheet" href="/project_root_path/style_resource_path.css" />
Run Code Online (Sandbox Code Playgroud)

但是,当我将应用程序移动到不同的环境时,这将给我带来麻烦.

所以我想知道在Facelets中引用CSS(以及JS和图像)资源的最佳方法是什么?

resources jsf facelets templating jsf-2

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

使用.jsp或.xhtml或.jsf扩展名创建JSF页面有什么区别

我看到了一些使用.jsp扩展创建JSF页面的示例,其他示例使用.xhtml扩展创建它们,其他示例选择.jsf.我只是想知道在使用JSF页面时上述扩展之间的区别是什么,以及如何选择适当的扩展名?

jsf file-extension jsp facelets

52
推荐指数
2
解决办法
5万
查看次数

使用facelets(jsf)和xhtml进行Eclipse自动完成(内容辅助)

如何使用facelets在JSF(1.2)标签的.xhtml页面中激活eclipse(3.5,WTP)内容?它适用于.jsp文件,但不适用于xhtml.

我谷歌很多,并且在很多地方(包括MyFaces wiki)都说 - "Eclipse无法使用xhtml和facelets"

由于这适用于.jsp文件,我假设可能有一些机制可用于激活该内容辅助.

我开始研究一个已经拥有大量代码库的项目,因此不能选择更改扩展名.额外的插件也是不受欢迎的,但如果没有其他工作可以接受.

(我问的问题是验证某人是否没有找到这个问题的诙谐解决方法 - 否则我知道这是不可能的)

java eclipse jsf facelets

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

何时使用f:view和f:subview

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

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

view facelets subview jsf-2

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

如何在CSS选择器中使用JSF生成的带有冒号":"的HTML元素ID?

我一直在使用JSF处理一个简单的Java EE项目.

<h:form id="phoneForm">
    <h:dataTable id="phoneTable">

    </h:dataTable>
</h:form>
Run Code Online (Sandbox Code Playgroud)

我试图通过设置CSS #phoneTable { ... },但它不起作用.在客户端检查HTML源代码时,JSF生成的HTML表格似乎以形式获取客户端ID id="phoneForm:phoneTable".我无法应用CSS via #phoneForm:phoneTable { ... },因为冒号表示伪选择器的开始并导致错误.

我怎么能在CSS选择器中使用它呢?

css jsf facelets css-selectors clientid

45
推荐指数
1
解决办法
2万
查看次数

如何在JSF中显示我的应用程序错误?

在我的JSF/Facelets应用程序中,这是我表单的一部分的简化版本:

<h:form id="myform">
  <h:inputSecret value="#{createNewPassword.newPassword1}" id="newPassword1" />
  <h:message class="error" for="newPassword1" />
  <h:inputSecret value="#{createNewPassword.newPassword2}" id="newPassword2" />
  <h:message class="error" for="newPassword2" />
  <h:commandButton value="Continue" action="#{createNewPassword.continueButton}" />
</h:form>
Run Code Online (Sandbox Code Playgroud)

我希望能够根据continueButton()方法中发生的事情为特定的h:message标记分配错误.需要为newPassword和newPassword2显示不同的错误.验证器不会真正起作用,因为将传递结果的方法(来自DB)在continueButton()方法中运行,并且运行两次太昂贵.

我无法使用h:messages标记,因为该页面有多个地方需要显示不同的错误消息.当我尝试这个时,页面显示每条消息的重复.

我试过这个是最好的猜测,但没有运气:

public Navigation continueButton() {
  ...
  expensiveMethod();
  if(...) {
    FacesContext.getCurrentInstance().addMessage("newPassword", new FacesMessage("Error: Your password is NOT strong enough."));
  }
}
Run Code Online (Sandbox Code Playgroud)

我错过了什么?任何帮助,将不胜感激!

error-handling jsf facelets

40
推荐指数
3
解决办法
15万
查看次数

如何在servlet抛出运行时异常时在浏览器中显示用户友好的错误页面?

我正在使用JSF开发Web应用程序.我测试了它,因为我能够但不时抛出运行时异常.

那么,每次抛出异常时如何将用户重定向到特殊错误页面(而不是显示完整tomcat日志的500错误)?

jsf jsp facelets custom-error-pages

39
推荐指数
2
解决办法
5万
查看次数

连接facelets标记的属性中定义的EL表达式中的字符串

我需要为属性写一个EL表达式,如下所示:

#{cc.attrs.appreciatedByCurrentUser ? (cc.attrs.count +'<br/>'+ (cc.attrs.count-1)) : ((cc.attrs.count+1) +'<br/>'+ cc.attrs.count)}
Run Code Online (Sandbox Code Playgroud)

现在的问题是,这会产生错误,因为字符串无法连接,就像我这样做.那我怎么能纠正这个呢?

我正在使用带有facelets的JSF 2.0.


编辑:

我正在使用以下内联JavaScript解决问题

            <script type="text/javascript">
                var count=#{cc.attrs.count};
                document.write(#{cc.attrs.appreciatedByCurrentUser} ? (count-1) +'<br/>'+count  : count+'<br/>'+ (count+1));
            </script>
Run Code Online (Sandbox Code Playgroud)

你能想到这个问题吗?

jsf facelets el jsf-2

39
推荐指数
2
解决办法
8万
查看次数