java.lang.StringIndexOutOfBoundsException:字符串索引超出范围:-1 在 com.sun.faces.renderkit.ServerSideStateHelper.getState [英] java.lang.StringIndexOutOfBoundsException: String index out of range: -1 at com.sun.faces.renderkit.ServerSideStateHelper.getState
本文介绍了java.lang.StringIndexOutOfBoundsException:字符串索引超出范围:-1 在 com.sun.faces.renderkit.ServerSideStateHelper.getState的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
当我在没有
的情况下使用此代码时,它按预期工作,
When I use this code without <p:tab>
it works as expected,
<h:form>
<p:wizard>
<p:tab title="Test-1">
<h:form>
<p:growl id="msg"/>
<p:selectOneMenu value="#{studentController.departmentIDgenerate}">
<f:selectItems value="#{departmentController.departmentList}" var="deparet" itemLabel="#{deparet.departmentName}" itemValue="#{deparet.departmentId}"/>
<p:ajax listener="#{studentController.addMessage}" update="msg"/>
</p:selectOneMenu>
</h:form>
</p:tab>
<p:tab title="Test-2">
</p:tab>
</p:wizard>
</h:form>
但是当我开始使用 <p:tab>
时,它会抛出以下异常:
but when I start using <p:tab>
, it throws the below exception:
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at java.lang.String.substring(String.java:1937)
at com.sun.faces.renderkit.ServerSideStateHelper.getState(ServerSideStateHelper.java:266)
at com.sun.faces.renderkit.ResponseStateManagerImpl.getState(ResponseStateManagerImpl.java:100)
这是怎么引起的,我该如何解决?
How is this caused and how can I solve it?
推荐答案
让我们从移除外部 h:form
(包装
的表单开始> ) 因为你在这里有一个嵌套的表单(这很糟糕)
Lets start by removing the outer h:form
(form that wraps the <p:wizard>
) cause you got a nested forms here (which is bad)
这篇关于java.lang.StringIndexOutOfBoundsException:字符串索引超出范围:-1 在 com.sun.faces.renderkit.ServerSideStateHelper.getState的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文