Jsf 添加了faces-config.xml,但仍然无法访问目标
我有一个JSF应用程序在嵌入式jetty上运行。当我从eclipse运行它时,它可以工作,但不能从命令行运行。我意识到这是因为eclipse使用文件夹,而cli使用jar。在谷歌搜索之后,我认为这是因为我的jar缺少一个faces-config.xml。我在META-INF文件夹中添加了一个,但是我的xhtml中的bean仍然存在无法到达目标的错误 我如何检查JSF实际上正在扫描我的jar以查找@ManagedBean 另外,我使用maven构建项目的jar,将其复制到我的lib文件夹,然后使用java-cp lib\*com.test.MainSystem从cli运行它调试注释配置后,我可以看到Jetty只扫描WEB-INF下的jar 幸运的是,它们提供了一种添加外部jar的方法。加上这个让我站起来跑起来Jsf 添加了faces-config.xml,但仍然无法访问目标,jsf,annotations,jetty,Jsf,Annotations,Jetty,我有一个JSF应用程序在嵌入式jetty上运行。当我从eclipse运行它时,它可以工作,但不能从命令行运行。我意识到这是因为eclipse使用文件夹,而cli使用jar。在谷歌搜索之后,我认为这是因为我的jar缺少一个faces-config.xml。我在META-INF文件夹中添加了一个,但是我的xhtml中的bean仍然存在无法到达目标的错误 我如何检查JSF实际上正在扫描我的jar以查找@ManagedBean 另外,我使用maven构建项目的jar,将其复制到我的lib文件夹,然后使用
WebAppContext webapp = new WebAppContext();
// Add "this" jar to the list of jars to scan for annotations
String jarPath = JettyServer.class.getProtectionDomain().getCodeSource().getLocation().getPath();
webapp.setExtraClasspath(jarPath);
你为什么不把它放在WEB-INF/lib中?我没有,它是嵌入的。嵌入并不意味着你不能有这些。。。您可以而且应该这样做,因为它可以防止许多其他可能的问题。有关提示,请参阅。谢谢您的提示。那么,你是说我应该将jar中的目录设置为基本资源?