簡體   English   中英

春季要求映射和主題

[英]Spring request Mapping and themes

我對Spring 3.0.7請求映射和Spring標准主題實現有疑問。

我的控制器實現如下

@ Controller
@RequestMapping(value="myUrl")
Public MyControllerClass

 @RequestMapping(Method=requestMethod.GET)
 Public myGetHandler (){
 }

因此,可以處理帶有http:// myApp / myUrl的URL,一切都很好。

主題通過鏈接鏈接激活

 <a href="?theme=mytheme"/>

主題的春季配置是

<bean id="themeChangeInterceptor" class="org.springframework.web.servlet.theme.ThemeChangeInterceptor">
    <property name="paramName" value="theme" />
</bean>

因此,如果我在myUrl頁面上,並且單擊此鏈接,則將加載主題,並且還將調用myGetHandler。

然而

如果我在網址中添加參數

 /myUrl?someParm=somevalue 

現在我的控制器可以像以前一樣工作了,我可以訪問該參數,但是單擊主題鏈接(請參見上方的href),該頁面的外觀如下所示

/myUrl?theme=myTheme

導致異常,並且頁面或主題均不會加載。 我將在稍后發布堆棧跟蹤,但它提示控制器(而非主題攔截器)存在問題。

如何映射我的控制器,以便主題和參數化URL起作用? 理想情況下,我想我想更改請求映射以僅處理參數化的url,而沒有其他處理?

我嘗試將請求映射更改為

   @RequestMapping(value="myUrl",params = "someParam=someValue") 

雖然此方法適用於帶有我的參數的鏈接,但不適用於主題鏈接。

我的猜測是,如果url是帶params的,單擊<a href="?theme=mytheme"/> double“?” 在目標網址中,例如/myUrl?someParm=somevalue?theme=mytheme

您應該使用類似c:url或一些javascript的東西來僅用一個構建URL? 和&作為參數定界符

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM