2011-01-21 12 views
7

Entonces mi nombre de proyecto empresarial TestProject, que contiene TestProject-ejb y TestProject-war, así que cuando ejecuto el proyecto, la url es así locahost:8080/TestProject-war. ¿Cómo puedo cambiar esta URL a localhost:8080/testproject. Yo uso NetBean 6.9, trato de hacer clic derecho sobre TestProject-war carpeta en NetBean, y especificar el contexto de la ruta allí bajo Run, pero todavía se carga locahost:8080/TestProject-warCómo cambio la ruta de contexto de mi Enterprise Project

Respuesta

12

Es necesario comprobar que el elemento context-root para el módulo web en el archivo application.xml que está en el directorio META-INF de su EAR se ha cambiado correctamente.

Un ejemplo sería el siguiente:

<?xml version="1.0" encoding="UTF-8"?> 
<application xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:application="http://java.sun.com/xml/ns/javaee/application_5.xsd" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_6.xsd" 
    id="Application_ID" version="6"> 

    <display-name>TestProject</display-name> 

    <module> 
     <web> 
      <web-uri>TestProjectWeb.war</web-uri> 
      <context-root>testproject</context-root> 
     </web> 
    </module> 

    <module> 
     <ejb>TestProjectEJB.jar</ejb> 
    </module> 

</application> 

En este ejemplo, el módulo web debe estar disponible en/TestProject del servidor se implementa en, por lo que en su caso http://localhost:8080/testproject.

(En caso de que desee implementar en la raíz de su servidor, puede dejar el elemento de contexto raíz vacío:. <context-root></context-root>)

Si de hecho ve que su acción en Netbeans ha cambiado correctamente este archivo, puede ser un problema de despliegue como BalusC indicado. Verifique la ubicación en la que se implementa el EAR e inspeccione manualmente si la versión implementada también tiene el valor correcto.

+0

En mi META_INF, solo veo el archivo MINIFEST.MF, ¿acabo de agregar application.xml allí? –

+0

Debería haber estado allí ya. Verifique que está buscando en el directorio META_INF correcto. Un EAR típico tiene muchos. Realice una búsqueda global de "application.xml" para estar seguro. De lo contrario, continúe y agregue uno. –

+0

Si tenía un proyecto de maven, no olvide que el número de versión se agrega automáticamente a los módulos durante la implementación. Por lo tanto, necesitaría especificar 'TestProjectEJB-1.0.jar' (o cualquiera que sea su número de versión). – tarka

1

Como se señaló Harry la plantilla de proyecto por defecto no crear un archivo application.xml, así que hay que crearlo a mano en $ENTERPRISE_APP_PATH/src/conf (probado con NB 6.9.1)

+0

Muchas gracias: D –

+0

El OP indicó que están usando Netbeans, lo que significa que no necesita crear application.xml a mano. Necesitas decirle explícitamente a Netbeans que lo cree. Ver la respuesta a continuación. – Duncan

1

acabo de encontrar con esta pregunta en el curso de averiguar lo mismo. Dado que OP estaba preguntando sobre hacer esto en Netbeans, permítanme agregar a las respuestas anteriores describiendo específicamente cómo hacer esto usando el IDE de Netbeans.

Con Netbeans 8 (y posiblemente también con versiones anteriores) puede decirle al IDE que cree el archivo application.xml para usted, de la siguiente manera. Haga clic con el botón derecho en el proyecto de la aplicación empresarial (en el ejemplo del OP sería "Proyecto de prueba"), seleccione "Nuevo" y luego "Descriptor de despliegue estándar ...". Esto creará un archivo "application.xml" y lo colocará en el lugar apropiado en su proyecto de Netbeans. Luego puede editar fácilmente este archivo para configurar el elemento raíz de contexto para que sea lo que desee.

Cuestiones relacionadas