Hi team,

Please find my comments inline.

On Fri, Mar 25, 2016 at 10:27 AM, Himasha Guruge <[email protected]> wrote:

> Hi All,
>
> I'm in the process of rewriting our existing BPMN REST API for C5, with
> msf4j in place. While checking the used annotations in the code,  I came
> across the use of @Context annotation in order to inject UserInfo [1]
>  interface which provides access to application and request URI
> information. We have used following two methods of this interface
> throughout the code.
>
> (1) QueryParameters()
> (2) getBaseUri()
>

Do we have an equlent for
​
uriInfo.getBaseUri in MSF4J supported annotation ? Can't we use
io.netty.handler.codec.http.HttpRequest.getUri()
​ ​
<http://netty.io/4.0/api/io/netty/handler/codec/http/HttpRequest.html#getUri()>

​?​


I tested if it's possible to inject UriInfo interface in msf4j by deploying
> a simple microservice sample (which uses @Context UriInfo info)  which
> failed with an error in executing the request, which means the injection of
> it is not possible with current msf4j implementation. [2]
>
> In [2] it is mentioned that there is @QueryParam annotation support in
> msf4j which we can use alternatively where we would have to pass the query
> parameter to the method in the same way we use @PathParam. See usage in [3].
>
> However, issues arise in following scenarios.
>
>  For example, In ModelService[4] we have a large  range of allowed  query
> params (name,nameLike,category,categoryLike etc) for a method, and based on
> the query params that the user has  passed (by using
> uriInfo.getQueryParameters()) we process the request accordingly.   In such
> a case if we are to use @
> ​​
> QueryParam it would mean we would have to pass all possible query
> parameters (Around 15) to the method.
>

I think this is should be ok.

​
>
>
Also, we have used
> ​​
> uriInfo.getBaseUri() method throughout as well.
>
> How are we going to proceed with this? Appreciate your suggestions on this.
>
> [1]
> https://jsr311.java.net/nonav/releases/1.1/javax/ws/rs/core/UriInfo.html
>
> [2]
> https://docs.wso2.com/display/MSF4J100/Key+Concepts#KeyConcepts-Supportedannotations
>
> [3] http://www.mkyong.com/webservices/jax-rs/jax-rs-queryparam-example/
>
> [4]
> https://github.com/wso2/carbon-business-process/blob/de4d3ca5a2c3d670dcbf07ee6b58f0afd9489e95/components/bpmn/org.wso2.carbon.bpmn.rest/src/main/java/org/wso2/carbon/bpmn/rest/service/repository/ModelService.java#L98
>
> Regards,
>
> Himasha Guruge
> *Software Engineer*
> WS*O2* *Inc.*
> Mobile: +94 777459299
> [email protected]
>

​Thanks,
Hasitha. ​




-- 
--
Hasitha Aravinda,
Senior Software Engineer,
WSO2 Inc.
Email: [email protected]
Mobile : +94 718 210 200
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to