我在Eclipse中收到以下错误:
The action value does not match a navigation case outcome
在以下行:
<h:commandLink value="Add person" action="add?faces-redirect=true" />
Run Code Online (Sandbox Code Playgroud)
我正在使用JSF 2,Tomcat 6,Glassfish el.
任何想法,为什么我得到这个,以及如何解决它?
我打算制作基于群组的权限计划,但我对以下内容感到困惑:
我有一些问题:
User > Group > Roles > Permissions 或
User > Roles > Permissions@PreAutorize hasPermission(#, '')或hasRole还是什么?我想测试服务方法,即解析一个excel文件 ,所以我需要在以下帮助:
请指教,谢谢.
我正在处理的示例应用程序在测试中没有资源文件夹,我不知道为什么,所以我尝试手动创建资源文件夹,如下所示:
来自eclipse:关于java资源 > 新源文件夹 > src/test/resources
我现在可以看到资源文件夹出现在测试包中,但问题是,是否有任何其他配置我应该做maven或spring或单元测试所以我可以使用资源文件夹并从中加载文件?
请指教,谢谢.
CASE:表单包含用于输入部门名称的输入文本(不能为空或空白),以及用于选择父部门的下拉列表(可以为空),在输入数据时,按清除,支持bean中的clear方法有效正如预期的那样很好,但是当没有输入数据并按下清除时,名称上的bean验证非空白并且出现验证消息,并且我想在清除时禁用验证.
查看代码:
部门名称:
<h:outputLabel>Parent Department:</h:outputLabel>
<ice:selectOneMenu id="parentDepartment" value="#{department.selectedParentDepartment}">
<f:selectItem/>
<f:selectItems value="#{departmentBean.departmentList}" var="dept"
itemLabel="#{dept.name}" itemValue="#{dept.id}" />
</ice:selectOneMenu>
<h:message for="parentDepartment" style="color:red" />
<ice:panelGroup>
<h:commandLink value="Add New" action="#{departmentBean.addOrUpdateDepartment}" />
<h:commandLink value="Add New" actionListener="#{departmentBean.clear}" />
</ice:panelGroup>
Run Code Online (Sandbox Code Playgroud)
Bean验证:
@NotBlank(message = "{name.required}")
@Size(max = 25, message = "{long.value}")
@Column(name = "name", length = 25, nullable = false)
private String name;
支持Bean方法:
public void clear() {
setDepartmentObj(new Department());
setSelectedParentDepartment(0);
}
我想制作一个util方法,从地图转换为列表,以便与EL一起使用,这是我试过的:
1- utils.taglib.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE facelet-taglib PUBLIC
"-//Sun Microsystems, Inc.//DTD Facelet Taglib 1.0//EN"
"https://facelets.dev.java.net/source/browse/*checkout*/facelets/src/etc/facelet-taglib_1_0.dtd">
<facelet-taglib xmlns="http://java.sun.com/JSF/Facelet">
<namespace>http://mycomp.com/utils</namespace>
<function>
<function-name>mapToList</function-name>
<function-class>com.mycomp.MyClass</function-class>
<function-signature>java.util.List mapToList(java.util.Map)</function-signature>
</function>
</facelet-taglib>
Run Code Online (Sandbox Code Playgroud)
2- web.xml:我添加了它,因为我添加了spring安全标记lib,如下所示:
<context-param>
<param-name>javax.faces.FACELETS_LIBRARIES</param-name>
<param-value>
/WEB-INF/springsecurity.taglib.xml
/WEB-INF/utils.taglib.xml
</param-value>
</context-param>
Run Code Online (Sandbox Code Playgroud)
3- xhtml页面:
xmlns:utils="http://mycomp.com/utils"
<ui:repeat value="#{utils:mapToList(myBean.map)}" var="entry" >
Key = #{entry.key} Value = #{entry.value} <br/>
</ui:repeat>
Run Code Online (Sandbox Code Playgroud)
4- Util类:
public class MyClass{
public static <T, S> List<Map.Entry<T, S>> mapToList(Map<T, S> map) {
if (map == null) {
return null;
}
List<Map.Entry<T, S>> list …Run Code Online (Sandbox Code Playgroud) 我有一个以下格式的日期对象:
2013 年 1 月 20 日星期日 10:12:27 GMT+02:00
上述时间正确显示在 Microsoft Outlook 中:
2013 年 1 月 20 日星期日 12:12 PM(这是 GMT+2 >> 客户端时区的时间)
当尝试将日期对象格式化为SimpleDateFormat在 Outlook 中显示时,使用以下代码:
SimpleDateFormat sdf=new SimpleDateFormat(
"EEE M/d/yyyy hh:mm a");
String receivedDate = sdf.format(email.getDateTimeReceived());
Run Code Online (Sandbox Code Playgroud)
格式化的结果是:
2013 年 1 月 20 日星期日 10:12
所以缺少两个小时的时区差异。
请告知如何解决该问题,谢谢。
我正在探索primefaces http://www.primefaces.org/showcase/ui/tabviewChangeListener.jsf中的选项卡组件 ,我想知道在单击特定选项卡时是否可以调用JavaScript.
请指教,谢谢.
我有一个输入组件有三种类型的验证(必需,validatorMessage,converterMessage),这个输入有自己的消息图标,整个表单有一个消息组件,显示所有组件的所有消息,如下所示:
<p:message for="idEstNumOfUser" display="icon" id="msgEstNumOfUser" />
<p:inputText id="idEstNumOfUser"
placeholder="Estimated Number of Users"
value="#{mybean.estimatedUserCount}" required="true" requiredMessage=""
maxlength="8" title="Estimated Number of Users"
validatorMessage="Please enter digits only for 'Estimated Number of Users'"
converterMessage="Please enter digits only for 'Estimated Number of Users'">
<f:convertNumber />
<p:ajax event="blur" update=":betasignup:msgEstNumOfUser" />
</p:inputText>
<p:messages id="messages" autoUpdate="true"/>
Run Code Online (Sandbox Code Playgroud)
我在错误消息之前有一个样式,显示一个警告图标,如下所示:
.ui-messages-error-summary:before{
font-family: FontAwesome;
speak: none;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;
-webkit-font-smoothing: antialiased;
content: "\f05a";
margin-right: 6px;
}
Run Code Online (Sandbox Code Playgroud)
发生了什么:在需要验证的情况下生成的消息组件html是:
<div class="ui-messages-error ui-corner-all">
<span class="ui-messages-error-icon">
</span>
<ul> …Run Code Online (Sandbox Code Playgroud) 在的展示数据表的ContextMenu
的contextMenu工作正常,它显示了一排点击右键,我想知道是否有可能以显示contextMenu对行选择(左键点击)?