有人知道它们是否重要吗?我正在尝试创建一个 WebLogic 12c 应用程序。对于web.xml文件,这样的xml声明可以吗:
<?xml version="1.0" encoding="windows-1252"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1">
这是我的 application.xml 声明:
<?xml version = '1.0' encoding="UTF-8"?>
<application xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/application_7.xsd" version="7">
如果我没有这样的版本=“7”,而是版本=“5”,这会重要吗?这是否告诉它使用 Java EE 5 规范,或者因为我使用的是 12c,所以无论如何它都将是 Java EE 7:
<?xml version = '1.0' encoding = 'windows-1252'?>
<application xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/application_5.xsd" version="5">
最佳答案
在 JavaEE 7 之前,所有常见注释(例如 @Path
或 @WebListener
)都必须在部署描述符中列出。通过引入这些注释,您现在可以将其留给他们来进行类角色绑定(bind)。
但是...它们没有已过时,web.xml
具有优先级并将覆盖注释。这使得编码人员可以轻松地设置一些用于开发和测试目的的设置,并让部署人员将其设置为更“可部署”的内容,而无需接触代码。
关于java - 部署描述符中的 xml 声明有何重要性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41488784/