2011-03-14 48 views
0

我的應用程序運行成功,直到我在其中添加org.springframework.web.servlet.view.InternalResourceViewResolver。它給人的錯誤:Spring ViewResolver問題

javax.servlet.ServletException: Could not resolve view with name '/jsp/cusbilman/main/billportmain.jsp' in servlet with name 'cusbilman'

我認爲它打破了默認的重定向方法:

任何想法?


更新

代碼:

<bean id="htmlViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
     <property name="prefix" value="/cusbilman/resources/static/"/> 
     <property name="suffix" value=".html"/> 
     <property name="viewNames"> 
      <list> 
       <value>html1</value> 
      </list> 
     </property> 
    </bean> 

老bean定義:

<bean id="billingPortalMainController" class="com.tt.cusman.cusbilman.main.view.BillingPortalMainController" > 
<property name="commandName"><value>dummy</value></property>    
<property name="commandClass"><value>com.tt.cusman.cusbilman.main.view.command.DummyObject</value></property> 
<property name="sessionForm"><value>false</value></property> 
<property name="formView"><value>/jsp/cusbilman/main/billportmain.jsp</value></property> 
<property name="successView"><value>/jsp/cusbilman/main/billportmain.jsp</value></property> 
<property name="searchView"><value>/../cusinfman/search/search.html</value></property> 
<property name="postPaidHome"><value>/cusbilman/cusbilman/invoices.html?page=new</value></property> 
<property name="prePaidHome"><value>/cusbilman/cusbilman/prepaid/main.html?page=new</value></property> 
<property name="emptyForm"><value>/cusbilman/jsp/cusbilman/main/emptyForm.jsp</value></property> 
<property name="cusbilmanMainQdbDao" ref="cusbilmanMainQdbDao" /> 

感謝您的答覆

+3

發佈相關配置和代碼 – 2011-03-14 10:01:11

+0

感謝您的回覆 – Ali 2011-03-14 11:02:02

回答

1

視圖解析器將與您從控制器返回的名稱結合起來自己prefixsuffix性能。

在這種情況下,它會使用

"/cusbilman/resources/static/" + "/jsp/cusbilman/main/billportmain.jsp" + ".html" 

,因此將嘗試尋找一個文件中命名

/cusbilman/resources/static//jsp/cusbilman/main/billportmain.jsp.html 

webapp的基本目錄,看起來嚴重的錯誤我裏面。

你需要整理你的視圖解析器前綴和JSP路徑。

+0

不,它不以這種方式處理,因爲如果它從您的方式處理它,錯誤消息將以這種方式給它:billportmain.jsp.html。我希望新的viewhandler專注於這樣的網址:/ cusbilman/resources/static/html1 – Ali 2011-03-14 11:20:44

+0

@Ali:不,那是不正確的。你的「視圖名稱」仍然是'/ jsp/cusbilman/main/billportmain.jsp',這就是錯誤信息所指的內容。我告訴你你的設置有什麼問題。如果你選擇不相信,那就夠公平的了。 – skaffman 2011-03-14 11:22:38

+0

不要太冒犯,這只是一個想法。我想要做的事情是,在一個控制器上傳遞一個html頁面。我可以用一個簡單的html href來做,但是,它可能會產生安全問題,我不想觸摸應用服務器屬性等。 – Ali 2011-03-14 11:27:08