Hallo,
ich habe folgendes Programm aus dem Buch "JSP und Servlets von Kopf bis Fuss":
Und ein Deployment Descriptor:
[XML]<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w4.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">
<servlet>
<servlet-name>ListenerTester</servlet-name>
<servlet-class>com.example.ListenerTester</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ListenerTester</servlet-name>
<url-pattern>/ListenTest.do</url-pattern>
</servlet-mapping>
<context-param>
<param-name>rasse</param-name>
<param-value>Daennische Dogge</param-value>
</context-param>
<listener>
<listener-class>
com.example.MeinServletContextListener
</listener-class>
</listener>
</web-app>[/XML]
Der Package-Explorer in Eclipse ist so aufgebaut:
Was ich nicht verstehe ist, warum am Ende das hier kommt?:
Gibt es irgendwelche Besonderheiten etc. die mit Eclipse vorgenommen werden muessen, oder mache ich etwas grundsaetzlich falsch? :bahnhof:
ich habe folgendes Programm aus dem Buch "JSP und Servlets von Kopf bis Fuss":
Java:
package com.example;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ListenerTester extends HttpServlet {
private static final long serialVersionUID = 1L;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
super.doGet(req, resp);
resp.setContentType("text/html");
PrintWriter out=resp.getWriter();
out.println("Vom Listener gesetzte Kontextattribute testen<br>");
out.println("<br>");
Hund hund=(Hund)getServletContext().getAttribute("hund");
out.println("Die Hunderasse ist: "+hund.getRasse());
}
}
Java:
package com.example;
import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class MeinServletContextListener implements ServletContextListener{
@Override
public void contextDestroyed(ServletContextEvent arg0) {
}
@Override
public void contextInitialized(ServletContextEvent event) {
ServletContext sc=event.getServletContext();
String hundeRasse=sc.getInitParameter("rasse");
Hund h=new Hund(hundeRasse);
sc.setAttribute("hund", h);
}
}
Java:
package com.example;
public class Hund {
private String rasse;
public Hund(String rasse){
this.rasse=rasse;
}
public String getRasse(){
return rasse;
}
}
Und ein Deployment Descriptor:
[XML]<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w4.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">
<servlet>
<servlet-name>ListenerTester</servlet-name>
<servlet-class>com.example.ListenerTester</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ListenerTester</servlet-name>
<url-pattern>/ListenTest.do</url-pattern>
</servlet-mapping>
<context-param>
<param-name>rasse</param-name>
<param-value>Daennische Dogge</param-value>
</context-param>
<listener>
<listener-class>
com.example.MeinServletContextListener
</listener-class>
</listener>
</web-app>[/XML]
Der Package-Explorer in Eclipse ist so aufgebaut:
Was ich nicht verstehe ist, warum am Ende das hier kommt?:
Gibt es irgendwelche Besonderheiten etc. die mit Eclipse vorgenommen werden muessen, oder mache ich etwas grundsaetzlich falsch? :bahnhof: