使用导入到 JSF 2.2 项目中".jar"文件



我是JSF的新手,我一直在寻找一些教程和帖子(很难找到好的/新的材料),但我仍然不知道如何将".jar"文件导入到我的JSF 2.2项目中。

我有这个".jar"文件,它使用了一些"。所以(共享对象)文件。因此,我将它们复制并粘贴到WEB-INF/lib文件夹中(正如一些教程建议的那样)。然后我右键单击我的项目,选择:属性> Java构建路径>添加外部jar,并指向我上面提到的"。jar"。

之后,我创建了我的Bean和我的视图,如下所述:

豆:

package somepackage;
import javax.faces.bean.*;
import uk.ac.ox.cs.fdr.*; // This is the jar file I want to use
@ManagedBean
public class SomeBean {
  private String text = "";
  public String getText(){
      return(text);
  }
  public void setText(String ntext){
      this.text = ntext;
  }
  public void foo(){
      String aux = "";
      try {
            Session session = new Session(); //this class is defined inside the .jar file
            session.loadFile("intro.csp");
            //
            for (Assertion assertion : session.assertions()) {
                assertion.execute(null);//Assertion is also a class from this jar
                aux.concat(assertion.toString()+" "+
                    (assertion.passed() ? "Passed" : "Failed")); // here I concatenate the string to my auxiliary string
            }
        }
        catch (InputFileError error) {
            setText(error.toString());
        }
        catch (FileLoadError error) {
            setText(error.toString());
        }
        this.setText(aux);
        fdr.libraryExit();
  }  

}

And my view:

<h:form>
   <textarea>#{someBean.text}</textarea>
   <h:commandButton value="Press Me" action="#{someBean.foo}"/>
</h:form>

当我运行我的服务器(我使用Tomcat 8与eclipse),一切正常启动(我得到2个警告,但我看到在其他帖子,我可以忽略它们)它们是:

Classpath entry /home/rrs/workspace/myProjct/WebContent/WEB-INF/lib/fdr.jar will not be exported or published. Runtime ClassNotFoundExceptions may result.      myProjct        P/myProjct  Classpath Dependency Validator Message

Description Resource    Path    Location    Type Method must have signature "String method(), String method()...

所以我去http://localhost:8080/myProjct/index.jsf并尝试使用我的按钮(想法是,当我按下它,foo()函数将被调用,文本区将显示一些文本)。但是看起来从"try{}"到"fdr。libraryExit",代码不会被执行(控制台不显示任何错误,但是文本区域没有更新)。我不知道为什么会这样。

PS:我粘贴了"介绍"。

我认为您可能错过了部署组装部分。您需要检查Project Properties -> Deployment Assembly,将jar放到服务器的WEB-INF/lib文件夹中。

相关内容

  • 没有找到相关文章

最新更新