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

Why does OpenShift Tomcat 7 (JBoss EWS 2.0) does not support <form:*> tags of spring MVC in jsps?

在我的 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: Unable to compile class for JSP

error 当我将上面的代码修改为:

<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> 标签。

EDIT:

似乎 Tomcat 7.0.54 不支持标签,因为我 运行 在 Tomcat 7.0.54 上的本地应用程序出现相同的编译错误。那么我怎样才能在 Tomcat 7.0.54 上制作带有标签的 运行 应用程序,因为我必须只使用 openshift Tomcat?有解决办法吗?

好吧,我在 open shift Tomcat 7.0.54 上部署的 Spring MVC 应用程序支持除 之外的标签,然后指向SQL SERVER DB 位于另一个位置,现在它指向打开班次 PostgreSQL。 令人惊讶的是网络应用 运行 很好。但是我没有得到它早些时候给出错误的确切原因。 我想有这样一些可能的原因:

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