2017-06-13 6 views
1

を使って春のMVCで休憩コントローラのweb.xml内に複数のURLパターンをマッピングするためにどのように、私は設定ディスパッチャ-servlet.xmlファイルではタイル

<bean id="viewResolver" 
    class="org.springframework.web.servlet.view.UrlBasedViewResolver"> 
    <property name="viewClass" 
     value="org.springframework.web.servlet.view.tiles3.TilesView" /> 
</bean> 


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

春-のsecurity.xmlの下に抱えていますファイル

<http auto-config="true" use-expressions="true"> 
    <intercept-url pattern="/resources/**" access="true" /> 
    <intercept-url pattern="/login.htm" access="true" /> 
    <intercept-url pattern="/postSocialResponse.htm" access="true" /> 
    <intercept-url pattern="/rest/socialData/*" access="true" /> 
    <intercept-url pattern="/**" access="hasAnyRole('ROLE_SA','ROLE_ADMIN', 'ROLE_LEAD','ROLE_AGENT')" /> 
    <form-login 
     login-page="/login.htm" 
     default-target-url="/" 
     authentication-failure-url="/login.htm?error" 
     username-parameter="username" 
     password-parameter="password" /> 
    <logout logout-success-url="/login.htm?logout" /> 

web.xmlファイル

<servlet> 
    <servlet-name>socialcare-dispatcher</servlet-name> 
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

<servlet-mapping> 
    <servlet-name>socialcare-dispatcher</servlet-name> 
    <url-pattern>*.htm</url-pattern> 

</servlet-mapping> 

GetSocialAnalyzedDataService.javaは、誰もが、設定ファイルの上に使用して、このURLを呼び出すために私を助けてもらえ

@RestController 
@RequestMapping(value="/rest/socialData") 
public class GetSocialAnalyzedDataService { 
    private Logger logger = LoggerFactory.getLogger(getClass()); 

    private static SocialAnalyzedDataRepository socialAnalyzedDataRepository= SocialAnalyzedRepositoryImpl.getInstance(); 

    @RequestMapping(value = "/{feedPostUserId}", method = RequestMethod.GET) 

    public @ResponseBody String createMessage(@PathVariable String feedPostUserId) throws Exception { 
     logger.info("feedpost user id"+feedPostUserId); 
     return feedPostUserId; 
    } 
} 

を提出します。 私はhttp://localhost:8080/FilterRule/rest/socialData/create.htmで以下のコードを使用していた場合は、URLパターンhttp://localhost:8080/FilterRule/rest/socialData/234567

でWebサービスにアクセスすることはできませんよ、それは

@RequestMapping(value="/rest/socialData") 
public class GetSocialAnalyzedDataService { 
    private Logger logger = LoggerFactory.getLogger(getClass()); 

    private static SocialAnalyzedDataRepository socialAnalyzedDataRepository= SocialAnalyzedRepositoryImpl.getInstance(); 

    @RequestMapping(value = "/create.htm", method = RequestMethod.GET) 

    public @ResponseBody String createMessage() throws Exception { 
     logger.info("feedpost user id"); 
     return feedPostUserId; 
    } 
} 

答えて

0

を働いている、あなたはweb.xmlにこれを追加してみてくださいでした:

<servlet-mapping> 
    <servlet-name>socialcare-dispatcher</servlet-name> 
    <url-pattern>/rest/*</url-pattern> 
</servlet-mapping> 
+0

お返事ありがとうございました。しかし、私は上記のコードを書いている場合、私はこの行に見つかったerror.Multiple注釈を取得しています \t - cvc-identity-constraint.4.1:アイデンティティ制約のために宣言された重複した一意の値[socialcare-dispatcher] "web- 「servlet-name-uniqueness」が \t要素「web-app」である。 \t \tののsocialcare1-ディスパッチャ \t \tののorg.springframework.web.servlet.DispatcherServlet user6209247

+0

だから、私は以下のコードでそれを解決しました-class> \t \tの 2 \t \t <サーブレットマッピング> \t \tののsocialcare1-ディスパッチャ \t \t /rest/ \t \t \t user6209247

関連する問題