拜托,版本?你找的源码与.class是一个版本的吗?
还有,告诉我你要的版本,我也好帮你找啊。
其实应该说TomCat的源码就是有的,我估计你找的版本不同的说。
实在不行,用JAVA反编译器从.class文件反向可得出源文件。TomCat是open source的东西。不会在编译的时候捣鬼的。

解决方案 »

  1.   

    我是用了反编译器,但出来的源码我再编译一下只有3.03K,而Tomcat的.class文件却有3.67K,你说能是一样的吗,我想版本就要4.0.4的吧。
      

  2.   

    怪了,CookieExample.class和CookieExample.java不是都在这个目录吗:webapps\examples\WEB-INF\classes
      

  3.   

    那一个.java根本就不是我们看到的.class的源文件。你可以自己看一下。
      

  4.   

    // 
    // SourceAgain (TM) v1.10 (Core Java 1.2 Trial)
    // (C) 1998 Ahpah Software Inc
    // Please visit our website at http://www.ahpah.com for purchasing information.
    // import java.io.IOException;
    import java.io.PrintWriter;
    import java.util.ResourceBundle;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;
    import javax.servlet.http.Cookie;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;public class CookieExample extends HttpServlet {    ResourceBundle rb = ResourceBundle.getBundle( "LocalStrings" );    // Please visit http://www.sourceagain.com for product information.    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws IOException, ServletException
        {
            PrintWriter out;
            String title;
            Cookie[] cookies;
            Object cookie;
            String String9;        ((ServletResponse) response).setContentType( "text/html" );
            out = ((ServletResponse) response).getWriter();
            out.println( "<html>" );
            out.println( "<body bgcolor=\"white\">" );
            out.println( "<head>" );
            title = rb.getString( "cookies.title" );
            out.println( "<title>" + title + "</title>" );
            out.println( "</head>" );
            out.println( "<body>" );
            out.println( "<a href=\"/examples/servlets/cookies.html\">" );
            out.println( "<img src=\"/examples/images/code.gif\" height=24 width=24 align=right border=0 alt=\"view code\"></a>" );
            out.println( "<a href=\"/examples/servlets/index.html\">" );
            out.println( "<img src=\"/examples/images/return.gif\" height=24 width=24 align=right border=0 alt=\"return\"></a>" );
            out.println( "<h3>" + title + "</h3>" );
            cookies = request.getCookies();
            if( cookies.length > 0 )
            {
                int i;            out.println( (String.valueOf( rb.getString( "cookies.cookies" ) )) + "<br>" );
                for( i = 0; i < cookies.length; ++i )
                {
                    cookie = cookies[i];
                    out.print( "Cookie Name: " + (((Cookie) cookie).getName()) + "<br>" );
                    out.println( "  Cookie Value: " + (((Cookie) cookie).getValue()) + "<br><br>" );
                }
            }
            else
                out.println( rb.getString( "cookies.no-cookies" ) );
            String9 = ((ServletRequest) request).getParameter( "cookiename" );
            cookie = ((ServletRequest) request).getParameter( "cookievalue" );
            if( String9 != null && cookie != null )
            {
                Cookie cookie = new Cookie( String9, (String) cookie );            response.addCookie( cookie );
                out.println( "<P>" );
                out.println( (String.valueOf( rb.getString( "cookies.set" ) )) + "<br>" );
                out.print( (String.valueOf( rb.getString( "cookies.name" ) )) + "  " + String9 + "<br>" );
                out.print( (String.valueOf( rb.getString( "cookies.value" ) )) + "  " + ((String) cookie) );
            }
            out.println( "<P>" );
            out.println( (String.valueOf( rb.getString( "cookies.make-cookie" ) )) + "<br>" );
            out.print( "<form action=\"" );
            out.println( "CookieExample\" method=POST>" );
            out.print( (String.valueOf( rb.getString( "cookies.name" ) )) + "  " );
            out.println( "<input type=text length=20 name=cookiename><br>" );
            out.print( (String.valueOf( rb.getString( "cookies.value" ) )) + "  " );
            out.println( "<input type=text length=20 name=cookievalue><br>" );
            out.println( "<input type=submit></form>" );
            out.println( "</body>" );
            out.println( "</html>" );
        }    // Please visit http://www.sourceagain.com for product information.    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws IOException, ServletException
        {
            doGet( request, response );
        }
    }
      

  5.   

    反编译一下CookieExample.class,我的结果同 xycleo()虚竹和尚() ( ,
    我用的反编译工具是正版的decafe,你找找网上有没有free的.
      

  6.   

    可你看到了吗,他输出的是Cookie Name,但你运行他的例子,明明显示的是Name。说明反编译的这个也有问题。并且我用他的.java编译的servlet也不能运行啊,是不是需要什么特殊的参数?