Java 我不明白是什么错误
标识符[#]不是EL规范第1.19节要求的有效Java标识符(标识符::=Java语言标识符)。可以通过设置系统属性来禁用此检查Java 我不明白是什么错误,java,jsf,tomcat,xhtml,Java,Jsf,Tomcat,Xhtml,标识符[#]不是EL规范第1.19节要求的有效Java标识符(标识符::=Java语言标识符)。可以通过设置系统属性来禁用此检查 org.apache.el.parser.SKIP_IDENTIFIER_CHECK to true. -我正在使用Tomcat8服务器 表格页: <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Tra
org.apache.el.parser.SKIP_IDENTIFIER_CHECK to true.
-我正在使用Tomcat8服务器
表格页:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h = "http://xmlns.jcp.org/jsf/html"
xmlns:f = "http://xmlns.jcp.org/jsf/core" >
<h:head>
<title>Health Plan</title>
</h:head>
<h:body>
<h:form>
<h1>Health Care Sign up</h1>
<!--
Employee Name: <h:inputText value = "#{employee.name}" id="name" /> <br/>
Empolyee ID: <h:inputText value = "#{employee.id}" /> <br/>
Health Plan Name:
<h:selectOneMenu value="#{employee.healthPlanS}" >
<f:selectItems value="#{healthPlanOptions.heathPlanArrayList}" var="healthPlan" itemLabel="#{healthPlan.planName}" itemValue="# {healthPlan.planName}" />
</h:selectOneMenu>
-->
<br/>
<h:commandButton value= "submit" action="ConfirmRegistration" />
</h:form>
</h:body>
</html>
健康计划:
import javax.faces.bean.ManagedBean;
@ManagedBean
public class HealthPlan {
private String planName, planPrice;
public HealthPlan() {
}
public HealthPlan(String name, String price) {
this.planName = name;
this.planPrice = price;
}
public String getPlanName() {
return planName;
}
public void setPlanName(String planName) {
this.planName = planName;
}
public String getPlanPrice() {
return planPrice;
}
public void setPlanPrice(String planPrice) {
this.planPrice = planPrice;
}
}
健康计划选项:
import java.util.ArrayList;
import javax.faces.bean.ManagedBean;
@ManagedBean
public class HealthPlanOptions {
private ArrayList<HealthPlan> heathPlanArrayList;
public HealthPlanOptions() {
heathPlanArrayList = new ArrayList<HealthPlan>();
heathPlanArrayList.add(new HealthPlan("Heath Care", "1555.5$"));
heathPlanArrayList.add(new HealthPlan("Heath Care 2", "1959.10$"));
}
public ArrayList<HealthPlan> getHeathPlanArrayList() {
return heathPlanArrayList;
}
public void setHeathPlanArrayList(ArrayList<HealthPlan> heathPlanArrayList) {
this.heathPlanArrayList = heathPlanArrayList;
}
}
import java.util.ArrayList;
导入javax.faces.bean.ManagedBean;
@ManagedBean
公共类健康计划选项{
私人ArrayList heathPlanArrayList;
公共卫生计划选项(){
heathPlanArrayList=新ArrayList();
heathPlanArrayList.add(新健康计划(“健康护理”,“1555.5$”));
heathPlanArrayList.add(新健康计划(“健康护理2”,“1959.10$”));
}
公共阵列列表getHeathPlanArrayList(){
返回heathPlanArrayList;
}
公共无效集合heathPlanArrayList(ArrayList heathPlanArrayList){
this.heathPlanArrayList=heathPlanArrayList;
}
}
注:
代码(带注释)给出了以下错误:
严重:路径为[/jsf_2]的上下文中Servlet[Faces Servlet]的Servlet.service()引发异常[标识符[#]不是EL规范第1.19节要求的有效Java标识符(标识符::=Java语言标识符)。可以通过将系统属性org.apache.el.parser.SKIP_IDENTIFIER_check设置为true来禁用此检查。]
javax.el.ELException:标识符[#]不是el规范第1.19节要求的有效Java标识符(标识符::=Java语言标识符)。通过将系统属性org.apache.el.parser.SKIP_IDENTIFIER_check设置为true,可以禁用此检查。
位于org.apache.el.parser.astidentier.setImage(astidentier.java:177)
位于org.apache.el.parser.ELParser.Identifier(ELParser.java:1816)
位于org.apache.el.parser.ELParser.NonLiteral(ELParser.java:1548)
位于org.apache.el.parser.ELParser.ValuePrefix(ELParser.java:1369)
位于org.apache.el.parser.ELParser.Value(ELParser.java:1316)
位于org.apache.el.parser.ELParser.Unary(ELParser.java:1298)
位于org.apache.el.parser.ELParser.Multiplication(ELParser.java:1060)
位于org.apache.el.parser.ELParser.Math(ELParser.java:980)
位于org.apache.el.parser.ELParser.Concatenation(ELParser.java:936)
位于org.apache.el.parser.ELParser.Compare(ELParser.java:747)
位于org.apache.el.parser.ELParser.Equality(ELParser.java:641)
位于org.apache.el.parser.ELParser.And(ELParser.java:585)
位于org.apache.el.parser.ELParser.Or(ELParser.java:529)
位于org.apache.el.parser.ELParser.Choice(ELParser.java:486)
位于org.apache.el.parser.ELParser.Assignment(ELParser.java:243)
分号(ELParser.java:182)
位于org.apache.el.parser.ELParser.Expression(ELParser.java:175)
位于org.apache.el.parser.ELParser.MethodParameters(ELParser.java:1486)
位于org.apache.el.parser.ELParser.ValueSuffix(ELParser.java:1397)
位于org.apache.el.parser.ELParser.Value(ELParser.java:1328)
位于org.apache.el.parser.ELParser.Unary(ELParser.java:1298)
位于org.apache.el.parser.ELParser.Multiplication(ELParser.java:1060)
位于org.apache.el.parser.ELParser.Math(ELParser.java:980)
位于org.apache.el.parser.ELParser.Concatenation(ELParser.java:936)
位于org.apache.el.parser.ELParser.Compare(ELParser.java:747)
位于org.apache.el.parser.ELParser.Equality(ELParser.java:641)
位于org.apache.el.parser.ELParser.And(ELParser.java:585)
位于org.apache.el.parser.ELParser.Or(ELParser.java:529)
位于org.apache.el.parser.ELParser.Choice(ELParser.java:486)
位于org.apache.el.parser.ELParser.Assignment(ELParser.java:243)
分号(ELParser.java:182)
位于org.apache.el.parser.ELParser.Expression(ELParser.java:175)
位于org.apache.el.parser.ELParser.DeferredExpression(ELParser.java:113)
位于org.apache.el.parser.ELParser.CompositeExpression(ELParser.java:41)
位于org.apache.el.lang.ExpressionBuilder.createNodeInternal(ExpressionBuilder.java:111)
位于org.apache.el.lang.ExpressionBuilder.build(ExpressionBuilder.java:168)
位于org.apache.el.lang.ExpressionBuilder.createValueExpression(ExpressionBuilder.java:232)
位于org.apache.el.ExpressionFactoryImpl.createValueExpression(ExpressionFactoryImpl.java:67)
位于com.sun.faces.facelets.el.ELText$ELTextVariable.apply(ELText.java:203)
位于com.sun.faces.facelets.el.ELText$ELTextComposite.apply(ELText.java:184)
位于com.sun.faces.facelets.compiler.CommentInstruction.apply(CommentInstruction.java:81)
位于com.sun.faces.facelets.compiler.UIInstructionHandler.apply(UIInstructionHandler.java:141)
位于javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:190)
位于javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
在javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95)
位于com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93)
位于com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:87)
在com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:161)上
位于com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:972)
位于com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:99)
位于com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
在com.sun.faces.lifecycle.LifecycleImpl.render上(LifecycleImpl.java:219)
位于javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
在org.apache.tomcat.websocket.server.WsFilter上
import javax.faces.bean.ManagedBean;
@ManagedBean
public class HealthPlan {
private String planName, planPrice;
public HealthPlan() {
}
public HealthPlan(String name, String price) {
this.planName = name;
this.planPrice = price;
}
public String getPlanName() {
return planName;
}
public void setPlanName(String planName) {
this.planName = planName;
}
public String getPlanPrice() {
return planPrice;
}
public void setPlanPrice(String planPrice) {
this.planPrice = planPrice;
}
}
import java.util.ArrayList;
import javax.faces.bean.ManagedBean;
@ManagedBean
public class HealthPlanOptions {
private ArrayList<HealthPlan> heathPlanArrayList;
public HealthPlanOptions() {
heathPlanArrayList = new ArrayList<HealthPlan>();
heathPlanArrayList.add(new HealthPlan("Heath Care", "1555.5$"));
heathPlanArrayList.add(new HealthPlan("Heath Care 2", "1959.10$"));
}
public ArrayList<HealthPlan> getHeathPlanArrayList() {
return heathPlanArrayList;
}
public void setHeathPlanArrayList(ArrayList<HealthPlan> heathPlanArrayList) {
this.heathPlanArrayList = heathPlanArrayList;
}
}
<li>Monthly premium: #{healthPlanOption.price(#{healthPlanS})}</li>