2016-12-28 5 views
0

Я пишу веб-сервис, который имеет несколько параметров в URL-адресе. Я знаю, что могу сделать это с помощью jax-rs, но могу ли я сделать это с помощью Struts2?RESTful Struts2 webservice с несколькими параметрами

То, что я мог бы сделать в JAX-RS:

@Path("/{service}/{companyName}/{acctId}") 
    public Response acceptPostAccount(@PathParam("service") String service, 
           @PathParam("companyName") String companyName, 
           @PathParam("acctid") String acct) 

То, что я хотел бы в Struts2:

@Path({@PathParam("service"),@PathParam("companyName"),@PathParam("acctId")}) 
private String service; 
private String companyName; 
private String acctId; 

// Setters omitted for brevity. 

или любой другой конфигурации сортировки, можно отобразить параметры пути к полям на акции ,

Вся документация и примеры, которые я видел на линии, показывают единственный параметр Id.

ответ

0

Да, вы можете.

Установите эти константы в struts.xml.

<constant name="struts.enable.SlashesInActionNames" value="true" /> 
<constant name="struts.mapper.alwaysSelectFullNamespace" value="false" /> 
<constant name="struts.patternMatcher" value="regex" /> 

Затем определяют действия, как:

<action name="/{service}/{companyName}/{acctId}"> 
    ... 
</action> 

Конечно, вы должны иметь сеттеры для свойств в вашем действии.

В Struts2 это называется Advanced Wildcards, и оно доступно с версии 2.1.9.

 Смежные вопросы

  • Нет связанных вопросов^_^