2013-01-21 16 views
5

Tôi có Tomcat 7 với Servlet 3.0 đang chạy trong Eclipse.index.html không hiển thị cho WebApp của tôi (Tomcat 7 trong Eclipse)

Dưới thư mục WEB-INF của tôi, tôi đã đặt hai tệp, web.xml và index.html. Web.xml xác định hoan nghênh-file như index.html tuy nhiên khi tôi đi đến

http://localhost:8080/WebApp/ 

tôi nhận được một 404.

Lạ một điều là tôi đã một servlet định nghĩa là/đăng nhập và khi tôi đi để

http://localhost:8080/WebApp/login 

tôi có thể nhìn thấy và sử dụng servlet (tôi có thể gỡ lỗi nó và xem doGet của tôi() theo yêu cầu)

tôi không có ý tưởng tại sao tôi không thể nhìn thấy các tập tin chào đón, nó đã làm việc một thời gian trước nhưng tôi đã làm được e thay đổi kể từ đó, tôi thay đổi cách tôi kết nối với một cơ sở dữ liệu bằng cách thiết lập một hồ bơi kết nối như Tomcat bắt đầu nhưng điều này không nên bị ảnh hưởng nhiều. Không hoàn toàn chắc chắn nơi để xem xét tiếp theo, catalina.out cho không có gợi ý.

Có ai có thể xem tại sao tệp chào mừng của tôi không hoạt động như tôi muốn không? Bất kỳ giúp đánh giá cao :)

Trả lời

8

Ahh nhận xét cuối cùng của tôi vừa mới khiến tôi nhận ra điều gì đó. Tôi đã được một chút ngớ ngẩn. Tôi chỉ đơn giản là đã có index.html của tôi ở vị trí sai, nó không phải là dưới WEB-INF nhưng theo WebContent (thư mục mẹ của WEB-INF). 404 thực ra là gợi ý lớn, mọi thứ đều hoạt động chính xác ngoại trừ tôi! Doh!

0

Trong file web.xml của bạn, bạn nên có một cái gì đó như thế này:

<servlet-mapping> 
    <servlet-name>Faces Servlet</servlet-name> 
    <url-pattern>*.xhtml</url-pattern> 
    <url-pattern>*.jsf</url-pattern> 
    <url-pattern>/faces/*</url-pattern> 
</servlet-mapping> 

Bằng cách này bạn đang lập bản đồ mẫu url để servlets. Trong ví dụ này, bạn truy cập index.xhtml, index.jsf hoặc .../faces/index

+1

Tha thứ cho tôi nếu tôi sai nhưng tôi không muốn ánh xạ bất kỳ thứ gì vào servlet (ngoại trừ những cái tôi đã lập bản đồ). Nó chỉ là tôi không tìm thấy tập tin chào mừng của tôi. – Neilos