Foros del Web » Programación para mayores de 30 ;) » Java »

Configurar web.xml para no usar pageContext.request.contextPath ?

Estas en el tema de Configurar web.xml para no usar pageContext.request.contextPath ? en el foro de Java en Foros del Web. Hola tengo una aplicacion con Spring MVC con Hibernate, pero el problema es que no lo tengo muy bien configurado porque para el ruteo, para ...
  #1 (permalink)  
Antiguo 27/08/2013, 11:41
Avatar de Sumerio  
Fecha de Ingreso: octubre-2009
Mensajes: 195
Antigüedad: 14 años, 6 meses
Puntos: 6
Pregunta Configurar web.xml para no usar pageContext.request.contextPath ?

Hola tengo una aplicacion con Spring MVC con Hibernate, pero el problema es que no lo tengo muy bien configurado porque para el ruteo, para la importacion de librerias .js y .css, tengo que usar pageContext.request.contextPath, les muestro mi configuracion:

• web.xml
Código:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	version="2.5">
	<display-name>extjs_commerceapp-solution</display-name>
	<session-config>
		<session-timeout>30</session-timeout>
	</session-config>
	<welcome-file-list>
		<welcome-file>login.jsp</welcome-file>
	</welcome-file-list>
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>
	  		/WEB-INF/commerceapp-servlet.xml
  		</param-value>
	</context-param>
	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>
	<servlet>
		<servlet-name>commerceapp</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
	</servlet>	
	<servlet-mapping>
		<servlet-name>commerceapp</servlet-name>
		<url-pattern>/mvc/*</url-pattern>
	</servlet-mapping>
</web-app>
• commerceapp-servlet.xml
Código:
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
	xmlns:mvc="http://www.springframework.org/schema/mvc"
	xsi:schemaLocation="http://www.springframework.org/schema/beans
		http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
		 http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
		 http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
		">
	<mvc:annotation-driven />
	<context:component-scan base-package="com.limati.commerceapp" />
	<bean id="viewResolver"
		class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<property name="viewClass"
			value="org.springframework.web.servlet.view.JstlView" />
		<property name="prefix" value="/WEB-INF/jsp/com/limati/commerceapp/" />
		<property name="suffix" value=".jsp" />
	</bean>
	<!-- Configures Hibernate - Database Config -->
	<import resource="commerceapp-dao-hibernate.xml" />
	<import resource="commerceapp-service.xml" />
</beans>
• Atraves de commerceapp-servlet.xml, importo los otros dos XML de mi configuracion Hibernate.

El problema es que para es mi pagina principal donde carga mi interfaz RIA, le tengo que poner este ruteo (pageContext.request.contextPath):

Código:
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>CommerceApp</title>
<link rel="stylesheet" type="text/css" href="${pageContext.request.contextPath}/ext4/resources/css/ext-all.css"/>
<script type="text/javascript" src="${pageContext.request.contextPath}/ext4/ext-all-debug.js"></script>
<link rel="stylesheet" type="text/css" href="${pageContext.request.contextPath}/resources/css/app.css"/>
    </head>
    <body style="background-color: #95B0CD" >
        <script type="text/javascript">
        	Ext.Loader.setConfig({
        		enabled: true,
        		paths:{
        			"app": "${pageContext.request.contextPath}/app"
        		}
        	});   
        	var CONTEXT_PATH = "${pageContext.request.contextPath}";
        	var USER = "${sessionScope.user.userName}";
        	app=Ext.create('Ext.app.Application',{
        		name:'LTI',
        	    appFolder: 'app/base/user',
        	    //controllers:['UserController'],	//si se quiere inicializar un controlador en la creación
        	    launch: function(){		 
        		    Ext.create("app.principal.view.Desktop",{
            		});      
        	    }	    
        	});
        	
        </script>
    </body>
</html>
Alguien me puede ayudar con este problema.
  #2 (permalink)  
Antiguo 27/08/2013, 16:01
Avatar de rgf1987  
Fecha de Ingreso: diciembre-2012
Ubicación: Asturias
Mensajes: 269
Antigüedad: 11 años, 3 meses
Puntos: 22
Respuesta: Configurar web.xml para no usar pageContext.request.contextPath ?

Pues no se si eso se puede configurar de alguna manera, supongo que estaras mapeando los controladores a diferentes rutas y que si no haces referencia al contexto no te accede a la pagina porque la ruta que se te genera no existe ¿Cierto?

Creo, que es necesario ponerlo, lo que puedes hacer es declarar una variable que te almacene esa linea de codigo para no tener que escribirla en todos los sitios, puedes ayudar de JSTL, por ejemplo asi:

Código HTML:
Ver original
  1. <c:set var="home">${pageContext.request.requestURL}</c:set>

Etiquetas: html, javascript, jsp, servlet, usar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:33.