我正在开发一个新项目,它将使用JavaF 7和WildFly,但我仍然对我应该使用哪些maven依赖项感到困惑.我发现这两个组显然可以使用:org.wildfly.bom和org.jboss.spec
他们在项目中使用以下预定义工件(在https://repository.jboss.org/nexus/index.html#welcome中搜索):
org.wildfly.bom:
org.jboss.spec:
此外,我已经意识到我可以使用org.jboss.spec看到依赖关系层次结构,但不能看到wildfly.bom.所以,我的问题是有什么区别?你建议哪一个?
我在这里阅读有关Tomcat指南的内容和一些SO问题.而且我认为我几乎都在做同样的事情.但在某种程度上无法成功.
首先,我必须说我的应用程序部署在我无法控制的共享Tomcat服务器上.我只是删除我的.war文件并进行部署.
我试图将我的应用程序打包为ROOT.war但是没有用.管理员告诉我把它打包成我想要的名字,他们会照顾它.我把它打包为my-application.war并且已经部署但我必须输入http:// my-host/my-application才能进入网站.
联系管理员后,他们告诉我他们已经在我的主机中将一个上下文元素放在Tomcat配置文件中,如:
<Context path="" docBase="path of my-application deployed folder"/>
Run Code Online (Sandbox Code Playgroud)
应该将我的应用程序设置为所有请求的默认应用程序my-host.但它没有,每当我输入http:// my-host我得到:
HTTP Status 404 - / The requested resource (/) is not available
Run Code Online (Sandbox Code Playgroud)
但是,当我输入http:// my-host/my-application时,一切正常.任何关于可能出错的建议都是绝对值得赞赏的.
更新:
我尝试按照tomcat文档中描述的如何使应用程序默认的步骤.描述了3种方式,我尝试了所有三种方式,并且可以在localhost上将我的应用程序成功部署为ROOT.
我还尝试重现我在远程服务器上遇到的问题,以便找到原因并将其报告给管理员.我发现了几个问题.
无论哪种方式,我无法确切地指出究竟是什么阻止ROOT.war部署,因为这需要访问Tomcat日志文件和conf文件来检查我上面描述的情况.
另外,从我看来,我的管理员似乎无法维护Tomcat服务器并找到问题.所以我决定在与共享服务器挣扎之后使用专用的Tomcat服务器.
我想使用JDOM从URL解析XML文件.但是在尝试这个时:
SAXBuilder builder = new SAXBuilder();
builder.build(aUrl);
Run Code Online (Sandbox Code Playgroud)
我得到这个例外:
Invalid byte 1 of 1-byte UTF-8 sequence.
Run Code Online (Sandbox Code Playgroud)
我认为这可能是BOM问题.所以我查看了源代码并在文件开头看到了BOM.我尝试使用aUrl.openStream()Commons IO BOMInputStream从URL读取和删除BOM .但令我惊讶的是它没有检测到任何BOM.我尝试从流中读取并写入本地文件并解析本地文件.我将InputStreamReader和OutputStreamWriter的所有编码设置为UTF8但是当我打开文件时它有疯狂的字符.
我认为问题在于源URL编码.但是当我在浏览器中打开URL并将XML保存在文件中并通过上述过程读取该文件时,一切正常.
我对此问题的可能原因表示感谢.