当我尝试通过ajax调用渲染panelGroup时,它会给出未知的id.
<h:form id="form1" prependId=false>
<h:panelGroup id="panel1">
<h:dataTable/>
<ui:repeat value="#{bean.page}" var="page">
<h:commandLink value="#{page}">
<f:ajax execute="@form" render="panel1" listener="#{bean.page}" />
</h:commandLink>
</ui:repeat>
</h:panelGroup>
</h:form>
Run Code Online (Sandbox Code Playgroud)
当我尝试这段代码时,它会给出未知的id panel1.我尝试了id":panel1".我犯了同样的错误.
我正在将用 JUnit 4 编写的单元测试转换为 JUnit 5。当被测试的方法调用静态方法时,我们使用 JMockit。在 JUnit 4 中,
@RunWith(JMockit.class)
public class MyTest{
}
Run Code Online (Sandbox Code Playgroud)
在 JUnit 5 中,如果我在 pom.xml 中添加 JMocket 依赖项,则使用 JMockit 的 JUnit 5 测试和不使用 JMockit 的测试失败并显示错误
ERROR
error java.lang.NullPointerException
at mockit.integration.junit4.internal.RunNotifierDecorator.fireTestStarted.
Run Code Online (Sandbox Code Playgroud)
如果我从 pom.xml 中删除 JMockit 依赖项,JUnit 5 测试对于那些不使用 JMockit 的测试是成功的。但其他人因错误而失败,
mockit cannot be found.
<jmockit-version>1.38</jmockit-version>
<junit-jupiter-version>5.2.0</junit-jupiter-version>
<maven-surefire-plugin>2.21.0</maven-surefire-plugin>
<junit-platform-runner-version>1.2.0</junit-platform-runner-version>
<junit-platform-surefire-version>1.2.0</junit-platform-surefire-version>
<mockito-junit-jupiter-version>2.18.3</mockito-junit-jupiter-version>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven-surefire-plugin}</version>
<configuration>
<argLine> javaagent:"${settings.localRepository}"/org/jmockit/jmockit/${jmockit-version}/jmockit-${jmockit-version}.jar
-XX:-UseSplitVerifier -Xmx512m -XX:MaxPermSize=256m ${argLine}
</argLine>
</configuration>
</plugin>
<!-- Testing -->
<dependency>
<groupId>org.jmockit</groupId>
<artifactId>jmockit</artifactId>
<version>${jmockit-version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId> …Run Code Online (Sandbox Code Playgroud) 我的要求是当用户单击提交按钮时,计算的新值应存储在inputHidden字段值中.我在jQuery中编写函数来计算inputHidden字段的新值,当单击提交按钮时.新值将分配给inputHidden字段值.但问题是,在使用hidden.getValue()检索辅助bean中的值时,它返回null值.
jQuery code:
function hidden(){
var valueCalculated = '3';
$('#hidden').val(valueCalculated);
alert($('#hidden').val()); //displays 3 when submit button is clicked.
}
JSF code:
<h:inputHidden binding="#{bean.hidden}"/>
Run Code Online (Sandbox Code Playgroud)
在支持bean中,我有隐藏类型为HTMLInputHidden的getter和setter,我使用getValue()检索隐藏值.这应该返回valueCalculated但它返回null.获取辅助bean中的计算值的方法是什么.
要求是有条件地跳过字段验证.当用户选择添加时,应验证表单字段并将值添加到表中.如果单击编辑,则应跳过表单字段验证,但应将bean值复制到输入字段.
<composite:nameInput id="name" value="#{buyer.name}"
disableBeanValidation ="#{param['skipBeanValidation']}"/>
<h:commandLink action="#{buyerBacking.cancelEdit}" value="cancel"/>
<h:dataTable value="#{bean.list}">
<h:commandLink value="Edit" action="#{buyerBacking.edit}">
<f:param name="skipBeanValidation" value="true" />
</h:commandLink>
</h:dataTable>
<h:commandLink id="add" action="#{buyerBacking.add}"/>
Run Code Online (Sandbox Code Playgroud)
名称输入复合组件
<h:inputText id="fName" value="#{bean.fname}">
<f:validateBean disabled="#{cc.attrs. disableBeanValidation}"/>
</h:inputText>
Run Code Online (Sandbox Code Playgroud)
如果用户输入详细信息并选择添加,则会将详细信息添加到表中.如果验证错误,我们会显示错误消息.
然后用户选择编辑,将值复制到输入字段.用户选择取消编辑,将从输入字段中删除值.如果用户再次选择编辑,我们会得到索引超出范围的异常错误.为name_firstName索引超出范围的异常.
但是,如果用户选择添加和取消编辑,则不会发生这种情况.是否与传递的视图参数有关,某种方式为null?
javax.faces.FacesException:使用标识为frmAddAuthBuyerBR_inpAuthBuyerBRName_prefix_input的组件恢复状态时出现意外错误.原因:java.lang.IndexOutOfBoundsException:Index:0,Size:0 at com.sun.faces.application.view.StateManagementStrategyImpl $ 2.visit(StateManagementStrategyImpl.java:272)at com.sun.faces.component.visit.FullVisitContext .invokeVisitCallback(FullVisitContext.java:151)位于javax.faces.component(UIComponent.java:1612)的javax.faces.component.UIComponent.visitTree(UIComponent.java:1612),位于javax.faces.component的javax.faces.component.UIComponent.visitTree(UIComponent.java:1626). UIComponent.visitTree(UIComponent.java:1626)位于javax.faces.component(UIComponent.java:163)的javax.faces.component.UINamingContainer.visitTree(UINamingContainer.java:163),位于javax.faces.component的javax.faces.component.UIComponent.visitTree(UIComponent.java:1626) .UIComponent.visitTree(UIComponent.java:
一个正则表达式,仅允许在最大大小为20的字母表之间使用字母和数字和空格.
([a-zA-Z0-9]+([\\s][a-zA-Z0-9]+)*){0,20}.
这不允许在启动时使用空格,但不检查最大尺寸条件.如何更改此正则表达式?
我试图将一个对象从一个页面传递到另一个页面,其中每个页面都在不同的视图中.
在第一页上我有一个输入文本,其中myBean是ViewScoped Bean,名称是一个对象.
<h:inputText value="#{myBean.name}"/>
第二页包含,
<f:metadata>
<f:viewParam name="userId" value="#{myBean.name}"/>
</f:metadata>
我得到错误转换错误设置值mypackage.myBean@257100b'为'null Converter'.我们可以传递String值以外的对象来查看参数吗?