有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java无法理解错误是什么

标识符[#]不是EL规范第1.19节要求的有效Java标识符(标识符::=Java语言标识符)。可以通过设置系统属性来禁用此检查

org.apache.el.parser.SKIP_IDENTIFIER_CHECK to true.

-im使用tomcat 8服务器

表格页:

    <?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>

确认登记

<?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"
>
<h:head>
<title>Confirmation</title>
</h:head>
<h:body>
<ul>
<!-- <li>Employee Name: #{ employee.name } </li>
<li>Employee ID: #{ employee.id } </li>
<li>Health Plan Selected: #{employee.healthPlanS} </li>
<li>Monthly premium: #{healthPlanOption.price(#{healthPlanS})}</li>
<li>contact number :4697654</li> -->
</ul>
</h:body>
</html>

两个文件都已保存。xhtml

使用的豆类:

import javax.faces.bean.ManagedBean;

@ManagedBean
public class Employee {
    private String name, id, healthPlanS;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getHealthPlanS() {
        return healthPlanS;
    }

    public void setHealthPlanS(String healthPlanS) {
        this.healthPlanS = healthPlanS;
    }

}

健康计划:

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;
    }


}

注:

代码(带注释)给出了以下错误:

严重:Servlet。路径为[/jsf_2]的上下文中servlet[Faces servlet]的service()引发异常[标识符[#]不是EL规范第1.19节要求的有效Java标识符(标识符::=Java语言标识符)。可以通过“系统检查”属性禁用此设置。阿帕奇。埃尔。解析器。跳过\u标识符\u检查为true。]根本原因 javax。埃尔。ELException:标识符[#]不是EL规范第1.19节要求的有效Java标识符(标识符::=Java语言标识符)。通过设置系统属性“组织”,可以禁用此检查。阿帕奇。埃尔。解析器。跳过\u标识符\u检查为true。 在org。阿帕奇。埃尔。解析器。验光器。setImage(astiIdentifier.java:177) 在org。阿帕奇。埃尔。解析器。ELParser。标识符(ELParser.java:1816) 在org。阿帕奇。埃尔。解析器。ELParser。非文字(ELParser.java:1548) 在org。阿帕奇。埃尔。解析器。ELParser。ValuePrefix(ELParser.java:1369) 在org。阿帕奇。埃尔。解析器。ELParser。值(ELParser.java:1316) 在org。阿帕奇。埃尔。解析器。ELParser。一元(ELParser.java:1298) 在org。阿帕奇。埃尔。解析器。ELParser。乘法(ELParser.java:1060) 在org。阿帕奇。埃尔。解析器。ELParser。数学(ELParser.java:980) 在org。阿帕奇。埃尔。解析器。ELParser。连接(ELParser.java:936) 在org。阿帕奇。埃尔。解析器。ELParser。比较(ELParser.java:747) 在org。阿帕奇。埃尔。解析器。ELParser。相等(ELParser.java:641) 在org。阿帕奇。埃尔。解析器。ELParser。和(ELParser.java:585) 在org。阿帕奇。埃尔。解析器。ELParser。或者(ELParser.java:529) 在org。阿帕奇。埃尔。解析器。ELParser。选择(ELParser.java:486) 在org。阿帕奇。埃尔。解析器。ELParser。赋值(ELParser.java:243) 在org。阿帕奇。埃尔。解析器。ELParser。分号(ELParser.java:182) 在org。阿帕奇。埃尔。解析器。ELParser。表达式(ELParser.java:175) 在org。阿帕奇。埃尔。解析器。ELParser。MethodParameters(ELParser.java:1486) 在org。阿帕奇。埃尔。解析器。ELParser。ValueSuffix(ELParser.java:1397) 在org。阿帕奇。埃尔。解析器。ELParser。值(ELParser.java:1328) 在org。阿帕奇。埃尔。解析器。ELParser。一元(ELParser.java:1298) 在org。阿帕奇。埃尔。解析器。ELParser。乘法(ELParser.java:1060) 在org。阿帕奇。埃尔。解析器。ELParser。数学(ELParser.java:980) 在org。阿帕奇。埃尔。解析器。ELParser。连接(ELParser.java:936) 在org。阿帕奇。埃尔。解析器。ELParser。比较(ELParser.java:747) 在org。阿帕奇。埃尔。解析器。ELParser。相等(ELParser.java:641) 在org。阿帕奇。埃尔。解析器。ELParser。和(ELParser.java:585) 在org。阿帕奇。埃尔。解析器。ELParser。或者(ELParser.java:529) 在org。阿帕奇。埃尔。解析器。ELParser。选择(ELParser.java:486) 在org。阿帕奇。埃尔。解析器。ELParser。赋值(ELParser.java:243) 在org。阿帕奇。埃尔。解析器。ELParser。分号(ELParser.java:182) 在org。阿帕奇。埃尔。解析器。ELParser。表达式(ELParser.java:175) 在org。阿帕奇。埃尔。解析器。ELParser。DeferredExpression(ELParser.java:113) 在org。阿帕奇。埃尔。解析器。ELParser。CompositeExpression(ELParser.java:41) 在org。阿帕奇。埃尔。lang.ExpressionBuilder。createNodeInternal(ExpressionBuilder.java:111) 在org。阿帕奇。埃尔。lang.ExpressionBuilder。构建(ExpressionBuilder.java:168) 在org。阿帕奇。埃尔。lang.ExpressionBuilder。createValueExpression(ExpressionBuilder.java:232) 在org。阿帕奇。埃尔。ExpressionFactoryImpl。createValueExpression(ExpressionFactoryImpl.java:67) 在com。太阳面孔。小脸蛋。埃尔。ELText$ELTextVariable。应用(ELText.java:203) 在com。太阳面孔。小脸蛋。埃尔。ELText$ELTextComposite。应用(ELText.jav)a:184) 在com。太阳面孔。小脸蛋。编译器。评论说明。apply(CommentInstruction.java:81) 在com。太阳面孔。小脸蛋。编译器。UIInstructionHandler。应用(UIInstructionHandler.java:141) 在javax。面孔。看法小脸蛋。DelegatingMetaTagHandler。applyNextHandler(DelegatingMetaTagHandler.java:137) 在com。太阳面孔。小脸蛋。标签jsf。ComponentTagHandlerDelegateImpl。应用(ComponentTagHandlerDelegateImpl.java:190) 在javax。面孔。看法小脸蛋。DelegatingMetaTagHandler。apply(DelegatingMetaTagHandler.java:120) 在javax。面孔。看法小脸蛋。复合塞勒坦德勒。apply(CompositeFaceletHandler.java:95) 在com。太阳面孔。小脸蛋。编译器。名称空间处理器。apply(NamespaceHandler.java:93) 在com。太阳面孔。小脸蛋。编译器。编码处理器。apply(EncodingHandler.java:87) 在com。太阳面孔。小脸蛋。impl。DefaultFacelet。apply(DefaultFacelet.java:161) 在com。太阳面孔。应用看法FaceletViewHandlingStrategy。buildView(FaceletViewHandlingStrategy.java:972) 在com。太阳面孔。生命周期。渲染响应阶段。执行(RenderResponsePhase.java:99) 在com。太阳面孔。生命周期。阶段doPhase(Phase.java:101) 在com。太阳面孔。生命周期。生命周期。render(LifecycleImpl.java:219) 在javax。面孔。网络应用。FacesServlet。服务(FacesServlet.java:647) 在org。阿帕奇。卡塔琳娜。果心ApplicationFilterChain。internalDoFilter(ApplicationFilterChain.java:292) 在org。阿帕奇。卡塔琳娜。果心ApplicationFilterChain。doFilter(ApplicationFilterChain.java:207) 在org。阿帕奇。公猫websocket。服务器WsFilter。doFilter(WsFilter.java:52) 在org。阿帕奇。卡塔琳娜。果心ApplicationFilterChain。internalDoFilter(ApplicationFilterChain.java:240) 在org。阿帕奇。卡塔琳娜。果心ApplicationFilterChain。doFilter(ApplicationFilterChain.java:207) 在org。阿帕奇。卡塔琳娜。果心标准包装阀。调用(StandardWrapperValve.java:212) 在org。阿帕奇。卡塔琳娜。果心标准连接阀。调用(StandardContextValve.java:106) 在org。阿帕奇。卡塔琳娜。验证者。AuthenticatorBase。调用(AuthenticatorBase.java:502) 在org。阿帕奇。卡塔琳娜。果心标准阀门。调用(StandardHostValve.java:141) 在org。阿帕奇。卡塔琳娜。阀门。错误报告阀。调用(ErrorReportValve.java:79) 在org。阿帕奇。卡塔琳娜。阀门。抽象逻辑阀。调用(AbstractAccessLogValve.java:616) 在org。阿帕奇。卡塔琳娜。果心标准引擎版本。调用(StandardEngineValve.java:88) 在org。阿帕奇。卡塔琳娜。连接器。郊狼适应者。服务(CoyoteAdapter.java:528) 在org。阿帕奇。郊狼。http11。抽象http11处理器。进程(AbstractHttp11Processor.java:1100) 在org。阿帕奇。郊狼。AbstractProtocol$AbstractConnectionHandler。进程(AbstractProtocol.java:687) 在org。阿帕奇。公猫util。网NioEndpoint$SocketProcessor。doRun(NioEndpoint.java:1520) 在org。阿帕奇。公猫util。网NioEndpoint$SocketProcessor。运行(niodempendpoint.java:1476) 在爪哇。util。同时发生的线程池执行器。runWorker(未知源) 在爪哇。util。同时发生的线程池执行器$Worker。运行(未知源) 在org。阿帕奇。公猫util。线程。TaskThread$WrappingRunnable。运行(TaskThread.java:61) 在爪哇。朗。丝线。运行(未知源)


共 (1) 个答案

  1. # 1 楼答案

    哦,好的,现在可以了。 首先我有

    <li>Monthly premium: #{healthPlanOption.price(#{healthPlanS})}</li>
    

    这导致了同样的错误。 其次是注释块。 谢谢@balbus 你是野兽:)