не может получить доступ к сервлету, 404 не найден - PullRequest
1 голос
/ 08 октября 2010

edit 10/8/10 @ 8:20 am est - поскольку я не могу заставить эту работу работать в prod, я постараюсь, чтобы она не прошла тестирование.

edit 8/8/10 @4:30 вечера - отлично провести время !!!НЕ.Хорошо, ад продолжается.Ранее сегодня я узнал, что мы также запускаем Apache httpd как отдельный процесс.Таким образом, мы думаем, что, может быть, мы не будем пересылать запрос Tomcat как-то.Я не запускаю httpd в моей тестовой среде.

Edit 10/8/10 @ 20:20 - обнаружил, что на сервере также работает httpd.httpd только перенаправлял запросы jsp в Tomcat.Апач ел запросы сервлета, пытался обслуживать статические страницы (?) И, конечно, терпел неудачу.Я взломал bajezus из свойства worker2.pro, чтобы заставить httpd пересылать запросы.Ой.


Tomcat 5.5, RedHat linux.

Я создал сервлет, который, конечно, прекрасно работает в нашей тестовой среде.Я переместил его в производство, и у меня не получается с ошибкой 404.Судя по логу каталины, сервлет загружается нормально.

Я в тупике - я не знаю, как это устранить.Как будто я где-то неправильно написал имя сервлета.

Вот мой web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    <display-name>Pdf Servlet</display-name>
    <servlet>
        <servlet-name>pdf</servlet-name>
        <servlet-class>com.thop.exp.PdfServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>pdf</servlet-name>
        <url-pattern>/pdf</url-pattern>
    </servlet-mapping>
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
        </welcome-file-list>
    </web-app>

Я просматриваю www.myurl.net/PdfServlet/pdf.Я считаю, что это правильно.и имя файла войны - PdfServlet.war.

Есть идеи по проблеме или идеи о том, что я могу сделать, чтобы получить идею?


Вот журнал.

INFO: Installing web application at context path /PdfServlet from URL file:/mnt/san00/aaadata_root/ROOT/PdfServlet
Oct 7, 2010 11:32:50 PM org.apache.catalina.core.StandardHost start
INFO: XML validation disabled
Oct 7, 2010 11:32:50 PM org.apache.catalina.startup.ContextConfig applicationConfig
INFO: Missing application web.xml, using defaults only StandardEngine[Catalina].StandardHost[aaa.net].StandardContext[]
Oct 7, 2010 11:32:50 PM org.apache.catalina.core.StandardHost getDeployer
INFO: Create Host deployer for direct deployment ( non-jmx )
Oct 7, 2010 11:32:50 PM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
Oct 7, 2010 11:32:50 PM org.apache.jk.common.ChannelSocket init
INFO: JK2: ajp13 listening on /0.0.0.0:8009
Oct 7, 2010 11:32:50 PM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/25  config=/usr/share/tomcat5/conf/jk2.properties
Oct 7, 2010 11:32:50 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 4325 ms

Ответы [ 2 ]

1 голос
/ 08 октября 2010

Я бы рекомендовал попробовать упаковать ваше веб-приложение в файл WAR - назовите его PDFServlet.war.

Поместите это в свой каталог Tomcat / webapps.

URL-адрес будет http://www.myurl.net:8080/PdfServlet/pdf.

Я предполагаю, что Tomcat прослушивает порт 8080; если нет, добавьте свой номер порта.

Нет ли способа указать, какой PDF пользователь хочет? Или это всегда один и тот же PDF?

1 голос
/ 08 октября 2010

Tomcat 5.5 - это контейнер сервлета 2.4 , и вы указали, что у вас есть 2,5 web.xml.

Если тестируемая версия Tomcat новее 5.5 (6 или 7)затем попробуйте уменьшить web.xml до 2,4.


РЕДАКТИРОВАТЬ: ОК, затем попробуйте снова удалить / pdf из web.xml и посмотреть, сможете ли вы вызвать класс com.thop.exp.PdfServlet из файла index.jsp.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...