lumpynose

Tuesday, September 05, 2006

 

spring mvc convention v8


index.jsp
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>

<p> <!-- this works -->
<a href="url1/testurl1.htm">url1</a>
</p>

<p> <!-- this doesn't work at all -->
<a href="url1/xyzzy/testurl1.htm">url1/xyzzy</a>
</p>

<p> <!-- this doesn't work at all -->
<a href="xyzzy/url1/testurl1.htm">xyzzy/url1</a>
</p>

<p> <!-- this goes to the error view -->
<a href="url1/xyz.htm">xyz (url1)</a>
</p>

<p> <!-- this works -->
<a href="url2.htm">url2</a>
</p>

<p> <!-- this works -->
<a href="url3.htm">url3</a>
</p>

webapp08-servlet.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">

<beans>
<!--
## maps request URLs to Controller names
-->
<bean
class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping"
/>

<bean id="methodNameResolver"
class="org.springframework.web.servlet.mvc.multiaction.InternalPathMethodNameResolver" />

<!--
## Controller names are not important when using the
## ControllerClassHandlerMapping implementation
-->
<bean class="edu.berkeley.ist.convention.web.Url1Controller">
<property name="methodNameResolver"
ref="methodNameResolver"
/>
</bean>

<bean class="edu.berkeley.ist.convention.web.Url2Controller" />

<bean class="edu.berkeley.ist.convention.web.Url3Controller" />

<!--
## this bean with the well known name generates view names for us
-->
<bean id="viewNameTranslator"
class="org.springframework.web.servlet.view.DefaultRequestToViewNameTranslator" />

<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix"
value="/WEB-INF/views/"
/>

<property name="suffix"
value=".jsp"
/>
</bean>
</beans>

Url1Controller.java
package edu.berkeley.ist.convention.web;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.multiaction.MultiActionController;
import org.springframework.web.servlet.mvc.multiaction.NoSuchRequestHandlingMethodException;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* @author Rusty Wright
*/
public class
Url1Controller extends MultiActionController {
public ModelAndView
testurl1(HttpServletRequest request, HttpServletResponse response) {
ModelAndView mav = new ModelAndView("view1");
mav.addObject("message", "Hello view1!");

return(mav);
}

public ModelAndView
handleNoSuchRequestHandlingMethod(NoSuchRequestHandlingMethodException e,
HttpServletRequest request,
HttpServletResponse response)
throws Exception {
ModelAndView mav = new ModelAndView("error1");
mav.addObject("message", "Hello error1! (" + e.getMethodName() + ")");

return(mav);
}
}

Url2Controller.java
package edu.berkeley.ist.convention.web;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractController;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* @author Rusty Wright
*/
public class
Url2Controller extends AbstractController {
public ModelAndView
handleRequestInternal(HttpServletRequest request,
HttpServletResponse response) throws Exception {
ModelAndView mav = new ModelAndView("view2");
mav.addObject("message", "Hello view2!");

return(mav);
}
}

Url3Controller.java
package edu.berkeley.ist.convention.web;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractController;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* @author Rusty Wright
*/
public class
Url3Controller extends AbstractController {
public ModelAndView
handleRequestInternal(HttpServletRequest request,
HttpServletResponse response) throws Exception {
ModelAndView mav = new ModelAndView();
mav.addObject("message", "Hello view3!");

return(mav);
}
}


Monday, September 04, 2006

 

spring mvc convention v5


web.xml
<?xml version="1.0" encoding="UTF-8"?>

<web-app
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">

<description>
webapp05
</description>

<display-name>
webapp05
</display-name>

<!--
- Location of the Log4J config file, for initialization and
- refresh checks. Applied by Log4jConfigListener.
-->
<context-param>
<param-name>
log4jConfigLocation
</param-name>

<param-value>
/WEB-INF/log4j.xml
</param-value>
</context-param>

<listener>
<listener-class>
org.springframework.web.util.Log4jConfigListener
</listener-class>
</listener>

<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>

<servlet>
<servlet-name>
webapp05
</servlet-name>

<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>
webapp05
</servlet-name>

<url-pattern>*.htm</url-pattern>
</servlet-mapping>

<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>


webapp05-servlet.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">

<beans>
<!-- maps request URLs to Controller names -->
<bean
class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping"
/>

<!--
Controller names are not important when using the above
HandlerMapping implementation
-->
<bean class="edu.berkeley.ist.convention.web.Url1Controller" />

<bean class="edu.berkeley.ist.convention.web.Url2Controller" />

<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix"
value="/WEB-INF/views/"
/>
<property name="suffix"
value=".jsp"
/>
</bean>
</beans>


log4j.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<!-- param entries must come before layout entry!? -->
<appender name="FILE" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="/var/tmp/webapp.log" />
<param name="MaxFileSize" value="900kb" />
<param name="MaxBackupIndex" value="9" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%p: %d [%C %M] %m%n" />
</layout>
</appender>

<root>
<level value="debug" />
<appender-ref ref="FILE" />
</root>
</log4j:configuration>


Url1Controller.java
package edu.berkeley.ist.convention.web;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.multiaction.MultiActionController;
import org.springframework.web.servlet.mvc.multiaction.NoSuchRequestHandlingMethodException;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* @author Rusty Wright
*/
public class
Url1Controller extends MultiActionController {
public ModelAndView
handleNoSuchRequestHandlingMethod(NoSuchRequestHandlingMethodException ex,
HttpServletRequest request,
HttpServletResponse response)
throws Exception {
ModelAndView mav = new ModelAndView("error1");
mav.addObject("message", "Hello error1!");

return(mav);
}
}


Url2Controller.java
package edu.berkeley.ist.convention.web;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractController;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* @author Rusty Wright
*/
public class
Url2Controller extends AbstractController {
public ModelAndView
handleRequestInternal(HttpServletRequest request,
HttpServletResponse response) throws Exception {
ModelAndView mav = new ModelAndView("view2");
mav.addObject("message", "Hello view2!");

return(mav);
}
}


index.jsp
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>

<p>
<a href="url1/test_url1.htm">url1</a>
</p>

<p>
<a href="url2.htm">url2</a>
</p>


error1.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<html>
<head>
<title>
Error1
</title>
</head>

<body>
This is Error1.
<br>
<c:out value="${message}" />
</body>
</html>


view2.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<html>
<head>
<title>
View2
</title>
</head>

<body>
This is view2.
<br>
<c:out value="${message}" />
</body>
</html>


Archives

September 2006  

This page is powered by Blogger. Isn't yours?