为什么OpenShift Tomcat 7(JBoss EWS 2.0)不支持jsps中spring MVC的<form:*>标记?</form:*>

时间:2015-02-26 16:15:03

标签: java jsp spring-mvc tomcat openshift

在My Spring mvc中,login.jsp的代码片段为:

<form:form    method="post" action="authenticate" modelAttribute="userInfo">
                              <div class="form-group">
                                <label for="exampleInputEmail1">User Name</label>
                                   <i class="fa fa-user"></i>
                                <form:input  path="loginID" id="username" placeholder="" />

                              </div>
                              <div class="form-group"> 
                                <label for="exampleInputPassword1">Password</label>
                                <i class="fa fa-lock"></i>
                                 <form:password class="form-control" path="password" id="password" placeholder=""/>

                              </div>
                              <div>

                                <button type="submit" class="btn btn-danger">Login</button>
                              </div>
                            </form:form>

给了我

  

org.apache.jasper.JasperException:无法为JSP编译类

错误,当我将上述代码修改为:

<form:form    method="post" action="authenticate" modelAttribute="userInfo">
                              <div class="form-group">
                                <label for="exampleInputEmail1">User Name</label>
                                   <i class="fa fa-user"></i>
                                <input type="text" name="loginID" id="username"/>
                              </div>
                              <div class="form-group"> 
                                <label for="exampleInputPassword1">Password</label>
                                <i class="fa fa-lock"></i>
                                 <input type="password" class="form-control" name="password" id="password" />
                              </div>
                              <div>
                                <button type="submit" class="btn btn-danger">Login</button>
                              </div>
                            </form:form>

现在它运作正常。 问题是为什么上面的代码不能编译而第二个代码运行得很好? 我需要Tomcat 7来处理<form:*>标记,因为我的应用程序的其余部分是用<form:*>语法编写的,其中Tomcat 7似乎仅支持<form:form>标记。

  

编辑:

似乎Tomcat 7.0.54不支持标记,因为我在Tomcat 7.0.54上本地运行应用程序它给出了相同的编译错误。那么我如何使用标签在Tomcat 7.0.54上运行应用程序,因为我必须只使用openshift Tomcat?任何解决方法?

1 个答案:

答案 0 :(得分:0)

好吧,我在开放式Tomcat 7.0.54 上部署的Spring MVC应用程序是支持标签,除了,然后指向位于另一个的 SQL SERVER DB 现在位置指向开放式移位PostgreSQL。 令人惊讶的是,网络应用程序运行良好。但我没有得到它之前提出错误的确切原因。 我想有一些可能的原因:

1。用于编译JSP的JAR文件在打开的移位Tomcat lib位置可能已损坏。  2. JAR版本本地tomcat Lib Jars与开放式Tomcat lib Jars之间不匹配。  3.使用正确版本的Jars或者某些意外原因,WAR文件无法正确构建。  4.未在开放式移位tomcat中正确部署WAR。