在给定域中,已部署的应用程序名称和模块名称必须唯一。
asadmin deploy
命令进行部署,则应用程序或模块的默认名称为部署的 JAR 文件的前缀。例如,如果部署 hello.war
文件,则 Web 应用程序名称为 hello
。要覆盖默认名称,请指定 --name
选项。
在一个应用程序中,不同类型的模块可以具有相同的名称。部署应用程序时,将使用 _jar
、_war
和 _rar
后缀来命名保存各个模块的目录。相同类型的模块在一个应用程序内必须具有唯一的名称。此外,数据库架构文件名在一个应用程序内必须是唯一的。
建议将 Java 类似软件包的命名模式用于模块文件名、EAR 文件名、在 ejb-jar.xml
文件的 <module-name>
部分找到的模块名以及在 ejb-jar.xml
文件的 <ejb-name>
部分找到的 EJB 名称。使用这种类似软件包的命名模式可以确保不会发生名称冲突。这种命名方式的好处不仅适用于 Sun Java System Application Server,也适用于其他 J2EE 应用程序服务器。
EJB 的 JNDI 查找名称也必须是唯一的。建立一致的命名约定可能会有帮助。例如,将应用程序名和模块名附加到 EJB 名称中是一种确保名称唯一的方式。在这种情况下,mycompany.pkging.pkgingEJB.MyEJB 将是模块 pkgingEJB.jar(该模块封装在应用程序 pkging.ear 中)中的 EJB 的 JNDI 名称。
请确保软件包和文件名称中不包含空格或操作系统视为非法的字符。