#maven #jboss6.x #maven-ear-plugin #application.xml
#maven #jboss6.x #maven-ear-плагин #application.xml
Вопрос:
Можем ли мы упаковать ear для jboss 6? Что будет application.xml uri??
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="5"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee /application_5.xsd">
<display-name>my-ear</display-name>
<module>
<ejb>my-ejb</ejb>
</module>
Я попытался изменить версию на version = 6, но он сообщает, что файл не найден.
Caused by: java.io.FileNotFoundException: http://www.jboss.org/j2ee/dtd/jboss-app_6_0.dtd
Сталкивался ли кто-нибудь с такой проблемой с jboss 6 при развертывании ear????
Ответ №1:
Я решил это с помощью плагина maven ear и удалил созданный вручную application.xml .
Вот мой ear pom, это может быть полезно для других
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.surajchhetry.test</groupId>
<artifactId>test-ear</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>ear</packaging>
<name>test-ear</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<build>
<finalName>test-ear</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-ear-plugin</artifactId>
<version>2.4</version>
<configuration>
<version>6</version>
<defaultLibBundleDir>lib</defaultLibBundleDir>
<modules>
<ejbModule>
<groupId>${project.groupId}</groupId>
<artifactId>test-ejb</artifactId>
<bundleFileName>test-ejb.jar</bundleFileName>
</ejbModule>
<jarModule>
<groupId>${project.groupId}</groupId>
<artifactId>test-api</artifactId>
<bundleFileName>test-api.jar</bundleFileName>
</jarModule>
</modules>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>test-ejb</artifactId>
<version>${project.version}</version>
<type>ejb</type>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>test-api</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
</dependencies>
Ответ №2:
Используйте версию 5.0 — она должна быть доступна локально в $ JBOSS/docs /dtd/jboss-app_5_0.dtd
Приведенный выше xml — это нечто другое, хотя и измененное некоторыми другими документами схемы — это не соответствует отображаемой вами ошибке.
Вам нужно изменить файл jboss-app.xml
, чтобы использовать doctype
DOCTYPE jboss-app
PUBLIC "-//JBoss//DTD Java EE Application 5.0//EN"
"http://www.jboss.org/j2ee/dtd/jboss-app_5_0.dtd"
Комментарии:
1.Спасибо за ваш ответ. Вот мой application.xml <?xml version=»1.0″ encoding=»UTF-8″?> <xmlns приложения: xsi=»w3.org/2001/XMLSchema-instance » xmlns=»java.sun.com/xml/ns/javaee » xmlns:application=»java.sun.com/xml/ns/javaee/application_5.xsd » xsi:schemaLocation=»java.sun.com/xml/ns/javaee java.sun.com/xml/ns/javaee/application_6.xsd » id=»Application_ID» version=»6″> <отображаемое имя>my-ear</отображаемое имя> <модуль> <ejb> my-ejb</ejb> </модуль> </приложение>
2. и ошибка, которую я получаю, вызвана: java.io.FileNotFoundException: jboss.org/j2ee/dtd/jboss-app_6_0.dtd
3. во-первых: вам разрешено редактировать свой исходный вопрос вместо добавления комментариев. Тогда в этом сообщении об ошибке, которое вы публикуете, говорится, что не удается найти jboss-app _6_0 — его нет, это не имеет никакого отношения к application.xml . Опубликуйте свой jboss-app.xml файл
4. <!DOCTYPE jboss-app PUBLIC «-//JBoss//DTD J2EE Application 1.5//RU» » jboss.org/j2ee/dtd/jboss-app_6_0.dtd «> <jboss-app> <загрузчик-репозиторий> blb-ear: архив=blb-ear.ear </загрузчик-репозиторий> </jboss-app>