2016-06-03 5 views
0

Ich bin mir nicht sicher, wo der Fehler ist.Erhalte diesen Fehler während der Arbeit an Spring MVC und Apache Kacheln

Nachricht

Request processing failed; nested exception is org.apache.tiles.impl.CannotRenderException: 
    org.apache.tiles.util.TilesIOException: 
     JSPException including path '/WEB-INF/views/hotels/enterBookingInfo.jsp'. 

Beschreibung Der Server hat einen internen Fehler, die sie von der Erfüllung dieser Anforderung verhindert.

Ausnahme

org.springframework.web.util.NestedServletException: 
    Request processing failed; nested exception is org.apache.tiles.impl.CannotRenderException: 
     org.apache.tiles.util.TilesIOException: JSPException including path '/WEB-INF/views/hotels/enterBookingInfo.jsp'. 
     org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:656) 
     org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:549) 
     javax.servlet.http.HttpServlet.service(HttpServlet.java:624) 
     javax.servlet.http.HttpServlet.service(HttpServlet.java:731) 
     org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
     org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:77) 
     org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) 

Ursache

org.apache.tiles.impl.CannotRenderException: org.apache.tiles.util.TilesIOException: 
    JSPException including path '/WEB-INF/views/hotels/enterBookingInfo.jsp'. 
    org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:692) 
    org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:644) 
    org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:627) 
    org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:321) 
    org.springframework.web.servlet.view.tiles2.TilesView.renderMergedOutputModel(TilesView.java:124) 
    org.springframework.js.ajax.tiles2.AjaxTilesView.renderMergedOutputModel(AjaxTilesView.java:131) 
    org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:250) 
    org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1047) 
    org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:817) 
    org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719) 
    org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644) 
    org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:549) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:624) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:731) 
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
    org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:77) 
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) 

tiles.xml defintion ist als

<tiles-definitions> 
    <definition name="enterBookingInfo" extends="standardLayout"> 
     <put-attribute name="body" value="/WEB-INF/views/hotels/enterBookingInfo.jsp"> </put-attribute> 
    </definition> 
</tiles-definitions> 
012 folgt

Fliesen Konfiguration Extrakt

<beans:bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles2.TilesConfigurer"> 
    <beans:property name="definitions"> 
     <beans:value> 
      /WEB-INF/**/tiles.xml 
     </beans:value> 
    </beans:property> 
</beans:bean> 

Antwort

0

Ich habe dies durch Setzen des command Attribut des Formulars auf den Namen des Objekts modelAttribute in meinem Controller verwendet aufgelöst.

Ich musste auch die Methodensyntax ändern, um den BindingResult-Parameter zu haben, der dem ModelAttribute-Objekt folgen musste.

public String ultimateBooking(@RequestParam("hotelId") String hotelId,@ModelAttribute("booking") Booking bookingValidation,BindingResult result,ModelMap model) 

Es wurden keine Änderungen an tile.xml

Verwandte Themen