2013-06-12 1 views
0

First.java :이이 두 번째 자바 클래스Eclipse Europa에서 서블릿 클래스를 인스턴스화하는 중 오류가 발생 했습니까?

package com; 

import java.io.IOException; 
import java.io.PrintWriter; 

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

public class SecondServlet extends HttpServlet{ 

    public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException{ 

     resp.setContentType("html/text"); 
     PrintWriter out= resp.getWriter(); 
     Cookie []ck=req.getCookies(); 
     out.print(ck[0]); 
    } 
} 

의 web.xml : 배포 설명

<?xml version="1.0" encoding="UTF-8"?> 
<web-app id="WebApp_ID" version="2.4" 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"> 
    <display-name> 
    cooooooooooooookie</display-name> 
    <welcome-file-list> 
     <welcome-file>index.html</welcome-file> 
    </welcome-file-list> 
    <servlet> 
    <servlet-name>A</servlet-name> 
    <servlet-class>com.First</servlet-class> 
    </servlet> 
    <servlet-mapping> 
    <servlet-name>A</servlet-name> 
    <url-pattern>/cook</url-pattern> 
    </servlet-mapping> 
    <servlet> 
    <servlet-name>B</servlet-name> 
    <servlet-class>com.SecondServlet</servlet-class> 
    </servlet> 
    <servlet-mapping> 
    <servlet-name>B</servlet-name> 
    <url-pattern>/Servlet2</url-pattern> 
    </servlet-mapping> 
</web-app> 

오류이

package com; 

import javax.servlet.RequestDispatcher; 
import javax.servlet.ServletException; 
import javax.servlet.http.Cookie; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 
import java.io.*; 

class First extends HttpServlet { 

    public void doGet(HttpServletRequest req,HttpServletResponse res) throws IOException, ServletException 
    { 
     // res.setContentType("html/text"); 
     String name= req.getParameter("fname"); 
     Cookie ck= new Cookie("uname",name); 
     res.addCookie(ck); 

     RequestDispatcher r= req.getRequestDispatcher("Servlet2"); 
     r.forward(req,res); 


    } 
} 

SecondServlet.java 처음으로 자바 클래스입니다 :

Jun 12, 2013 9:03:15 PM org.apache.catalina.core.AprLifecycleListener init 
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre6\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Program Files\Java\jre7\bin\client;C:\Program Files\Java\jre7\bin;C:\Program Files\Broadcom\Broadcom 802.11 Network Adapter\Driver;;C:\Ruby193\bin;;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\QuickTime\QTSystem\;C:\Program Files\Java\jdk1.6.0_14\bin;. 
Jun 12, 2013 9:03:15 PM org.apache.tomcat.util.digester.SetPropertiesRule begin 
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.j2ee.server:cooooooooooooookie' did not find a matching property. 
Jun 12, 2013 9:03:15 PM org.apache.coyote.http11.Http11Protocol init 
INFO: Initializing Coyote HTTP/1.1 on http-2030 
Jun 12, 2013 9:03:15 PM org.apache.catalina.startup.Catalina load 
INFO: Initialization processed in 362 ms 
Jun 12, 2013 9:03:15 PM org.apache.catalina.core.StandardService start 
INFO: Starting service Catalina 
Jun 12, 2013 9:03:15 PM org.apache.catalina.core.StandardEngine start 
INFO: Starting Servlet Engine: Apache Tomcat/6.0.26 
Jun 12, 2013 9:03:15 PM org.apache.coyote.http11.Http11Protocol start 
INFO: Starting Coyote HTTP/1.1 on http-2030 
Jun 12, 2013 9:03:15 PM org.apache.jk.common.ChannelSocket init 
INFO: JK: ajp13 listening on /0.0.0.0:8009 
Jun 12, 2013 9:03:15 PM org.apache.jk.server.JkMain start 
INFO: Jk running ID=0 time=0/20 config=null 
Jun 12, 2013 9:03:15 PM org.apache.catalina.startup.Catalina start 
INFO: Server startup in 268 ms 
Jun 12, 2013 9:03:22 PM org.apache.catalina.core.ApplicationContext log 
INFO: Marking servlet A as unavailable 
Jun 12, 2013 9:03:22 PM org.apache.catalina.core.StandardWrapperValve invoke 
SEVERE: Allocate exception for servlet A 
java.lang.IllegalAccessException: Class org.apache.catalina.core.StandardWrapper can not access a member of class com.First with modifiers "" 
    at sun.reflect.Reflection.ensureMemberAccess(Unknown Source) 
    at java.lang.Class.newInstance0(Unknown Source) 
    at java.lang.Class.newInstance(Unknown Source) 
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1116) 
    at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:809) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) 
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852) 
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) 
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 
    at java.lang.Thread.run(Unknown Source) 

First.java 클래스에서 오류가 발생했습니다. 그것은 "서블릿 클래스 com.First를 인스턴스화하는 중 오류가 발생했습니다."라고 말하면서 빌드 경로> configurebuildpath> libraries> 외부 jar 추가와 같은 항아리를 추가했습니다. 이 후 주문 및 내보내기 탭> 모두 선택으로 이동했습니다.

도와주세요.

답변

0

public class First extends HttpServlet이 아니어야합니까?

서버가 인스턴스화 할 수 있도록 서블릿 클래스를 public으로 선언해야합니다.

는 적어도 컨테이너 그렇게 불평 :

SEVERE: Allocate exception for servlet A

java.lang.IllegalAccessException: Class org.apache.catalina.core.StandardWrapper can not access a member of class com.First with modifiers "" at sun.reflect.Reflection.ensureMemberAccess(Unknown Source) at java.lang.Class.newInstance0(Unknown Source) at java.lang.Class.newInstance(Unknown Source)

+0

내가 짓을 여기에 붙여 잊었다 ... 문제는 같은 @The 새로운 바보 – saikiran

+0

@saikiran입니다 : 당신이 무슨 짓을 한거야? 문제가 여전히 존재합니까? – NINCOMPOOP

+0

내 프로그램에 내가 공개 서면 .. 나는 여기에 붙여 넣는 동안 그것을 잊어 버렸다. – saikiran