Problemas de mapeamento de URL amigáveis ​​- Java Spring

Eu estou lutando com erros no web.xml onde todas as páginas estão chegando como 404, possivelmente, há um caminho de raiz, mas eu não posso ter certeza de onde está definido, etc.

Este é meu web.xml atual

   Spring3MVC  index.jsp   spring  org.springframework.web.servlet.DispatcherServlet  1   spring /*   

Meu controlador de ouvinte é assim

 /* * User */ @RequestMapping(value={"/user/{id}"}, method=RequestMethod.GET) public ModelAndView profileDisplay( HttpServletRequest request, HttpServletResponse response, @RequestParam(value="id", required=false) String id ) throws UnknownHostException, MongoException { ServiceSerlvet.appendSesssion(request); //get search ALL users BasicDBObject searchQuery = new BasicDBObject(); searchQuery.put("_id", new ObjectId(id)); List searchResponse = PersonController.searchUsers(searchQuery); //System.out.println("response from search user method: "+searchResponse); return new ModelAndView("user", "people", searchResponse); } 

Este é o erro atual que está saindo. Como é que não é mapeamento, como faço para corrigir isso?

 INFO: Server startup in 5904 ms 01-Nov-2012 19:40:21 org.springframework.web.servlet.DispatcherServlet noHandlerFound WARNING: No mapping found for HTTP request with URI [/springApp21] in DispatcherServlet with name 'spring' 01-Nov-2012 19:40:22 org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver handleNoSuchRequestHandlingMethod WARNING: No matching handler method found for servlet request: path '/user', method 'GET', parameters map['id' -> array['4fa6eddc0234964172522248']] 01-Nov-2012 19:40:24 org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver handleNoSuchRequestHandlingMethod WARNING: No matching handler method found for servlet request: path '/user', method 'GET', parameters map['id' -> array['4fa6eddc0234964172522248']] 

Eu respondi a uma das suas perguntas antes do topo da minha cabeça. Agora tenho access a um dos meus aplicativos de primavera. Aqui está uma configuração melhor.

Observe a alteração no web.xml, peço desculpas, mas mapear para / * faz com que todas as suas solicitações sejam resolvidas pelo distribuidor. De certa forma, ao criar um loop, o mapeamento inicial será encaminhado pelo dispatcher para o controlador, que usará um resolvedor de view para mapear onde sua solicitação deve ser encaminhada. O mapeamento para / * faz com que o mapeamento de resolvedor de exibição seja tratado pelo distribuidor.

Alterar para / faz com que todos os URLs não mapeados sejam manipulados pelo despachante, portanto, o mapeamento inicial é tratado pelo distribuidor, que o envia ao controlador e o mapeamento criado pelo viewresolver será mapeado para o .jsp, fazendo com que ele não seja selecionado pelo despachante. Me desculpe.

Web.xml

   Spring3MVC  index.jsp   spring  org.springframework.web.servlet.DispatcherServlet  1   spring /   

spring-config.xml (Você deve alterar a varredura do componente)

               

Controlador

 @RequestMapping(value={"/user/{id}"}, method=RequestMethod.GET) public ModelAndView profileDisplay( HttpServletRequest request, HttpServletResponse response, @RequestParam(value="id", required=false) String id ) throws UnknownHostException, MongoException { ServiceSerlvet.appendSesssion(request); //get search ALL users BasicDBObject searchQuery = new BasicDBObject(); searchQuery.put("_id", new ObjectId(id)); List searchResponse = PersonController.searchUsers(searchQuery); //System.out.println("response from search user method: "+searchResponse); //This should display "WEB-INF/views/user.jsp" you may need to adjust. return new ModelAndView("user", "people", searchResponse); } 

Obrigado Kbm por ter voltado para mim. Eu alterei meu web.xml e os mapeamentos gerais foram resolvidos. Eu corri para o problema que você mencionou com o css, js, arquivos de imagem também sendo passados.

Eu tentei adicionar url de interceptar, mas algo não está funcionando ainda. http é destacado em vermelho no web.xml. Quando eu pairar sobre ele no eclipse ele expressa

cvc-complex-type.2.4.a: Foi encontrado um conteúdo inválido a partir do elemento ‘http’. Um de ‘{“http: // java.sun.com/xml/ns/javaee”:description,” http://java.sun.com/xml/ns/javaee“:display-name, “http: / / java.sun.com/xml/ns/javaee”:icon, “http://java.sun.com/xml/ns/javaee”:distributable,” http: // java.sun.com/xml/ns / javaee “: context-param,” http://java.sun.com/xml/ns/javaee“:filter, “http: // java.sun.com/xml/ns/javaee”:filter-mapping, “http://java.sun.com/xml/ns/javaee”:listener,” http: // java.sun.com/xml/ns/javaee”:servlet, “http://java.sun.com / xml / ns / javaee “: mapeamento de servlet,” http: // java.sun.com/xml/ns/javaee”:session-config, “http://java.sun.com/xml/ns/javaee “: mime-mapping,” http://java.sun.com/xml/ns/javaee“:welcome-file-list, “http://java.sun.com/xml/ns/javaee”:error- página, “http://java.sun.com/xml/ns/javaee”:jsp-config,” http://java.sun.com/xml/ns/javaee“:security- constraint, “http: / /java.sun.com/xml/ns/javaee”:login-config, “http://java.sun.com/xml/ns/ javaee”: security-role, “http://java.sun.com / xml / ns / javaee “: env-entry,” http://java.sun.com/xml/ns/sexee “: ejb- ref, “http://java.sun.com/xml/ns/javaee”:ejb-local-ref,” http://java.sun.com/xml/ns/ javaee “: service-ref,” http : //java.sun.com/xml/ns/javaee “: resource-ref,” http://java.sun.com/xml/ns/sexee “: resource-env-ref,” http: // java .sun.com / xml / ns / javaee “: message-destination-ref,” http: // java.sun.com/xml/ns/javaee”:persistence-context-ref, “http: //java.sun .com / xml / ns / javaee “: persistência-unidade-ref,” http://java.sun.com/xml/ns/javaee“:post-construct, “http: // java.sun.com/xml / ns / javaee “: pré-destruir,” http://java.sun.com/xml/ns/javaee“:message- destination, “http://java.sun.com/xml/ns/javaee”: locale-encoding-mapping-list} ‘é esperado.

web.xml

   Spring3MVC  index.jsp   spring  org.springframework.web.servlet.DispatcherServlet  1   spring /        

    Intereting Posts