Dự án của tôi bao gồm các bộ điều khiển không được chú thích cũ hơn cùng với bộ điều khiển dựa trên chú thích mới hơn.<mvc: chú thích hướng /> với bộ điều khiển không được chú thích
Tôi đang sử dụng các lọ mùa xuân mới nhất (3.0.5) và trong bộ điều phối-servlet.xml của mình có <mvc:annotation-driven />
.
Vấn đề là <mvc:annotation-driven />
làm cho ánh xạ yêu cầu (thông qua thuộc tính tên của hạt điều khiển trong dispatcher-servlet.xml) cho bộ điều khiển không chú thích của tôi không hoạt động ... mỗi lần tôi chuyển yêu cầu đến điều khiển un-chú thích tôi nhận được một thông báo lỗi như:
org.springframework.web.servlet.DispatcherServlet noHandlerFound
WARNING: No mapping found for HTTP request with URI [/some_path/some_page.htm] in DispatcherServlet with name 'dispatcher'
làm thế nào tôi có thể giữ cho các bộ điều khiển un-chú thích như họ đang có nhưng nói mùa xuân để nhận ra bản đồ của họ (kiểu cũ)?
Tôi đang tìm các giải pháp có thay đổi tối thiểu đối với mã Java của các trình điều khiển mà tôi đã có.
Cảm ơn!
Cảm ơn bạn vì câu trả lời rất hữu ích này. Các bộ điều khiển cũ của tôi đã sử dụng phương thức name = url để ánh xạ, vì vậy tôi đã thêm BeanNameUrlHandlerMapping vào tệp dispatcher-servlet.xml của mình và nó hoạt động lại ngay bây giờ.Sau câu trả lời của bạn, tôi đã dành chút thời gian để đọc về ánh xạ xử lý và bộ điều hợp xử lý (không biết về chúng). Bây giờ câu hỏi của tôi là trong Spring 3, các ánh xạ xử lý và bộ điều hợp xử lý nào được tự động định nghĩa? Tôi đoán DefaultAnnotationHandlerMapping & AnnotationMethodHandlerAdapter nhưng có ai khác không? Bạn có thể hướng dẫn tôi đến nơi nó được đề cập trong tài liệu và/hoặc mã không? Cảm ơn một lần nữa! – rapt