Re: [Dev] Invoking a Jaggery api via HttpURLConnection

2016-09-26 Thread Denuwanthi De Silva
Hi ,

The above get() method returned the response as null.
After several attempts finally got it working with following approach with
the help of Nipuna.
Thanks a lot Nipuna for helping to sort this out.

 var xhr = new XMLHttpRequest();
 xhr.open("GET", url);
 xhr.setRequestHeader("Accept" , "application/json");
 xhr.setRequestHeader("Content-Type" , "application/json");
 xhr.send();
print(xhr.responseText);

Thanks,

On Fri, Sep 23, 2016 at 6:32 PM, Denuwanthi De Silva 
wrote:

> Hi Sameera,
>
> I could get it working with following approach[1]:
>
> var headers ={"Accept" : "application/json"};
> var response = get(url,null,headers,'text');
>
>
>
> [1]http://stackoverflow.com/questions/34505509/jaggeryjs-
> ajax-call-get-method
>
> Thanks
>
> On Fri, Sep 23, 2016 at 5:21 PM, Denuwanthi De Silva 
> wrote:
>
>> Hi Sameera,
>>
>> Please find the stacktrace
>>
>> Stacktrace:
>> at org.apache.jasper.servlet.JspServletWrapper.handleJspExcepti
>> on(JspServletWrapper.java:568)
>> at org.apache.jasper.servlet.JspServletWrapper.service(JspServl
>> etWrapper.java:470)
>> at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServl
>> et.java:395)
>> at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>> at org.apache.catalina.core.ApplicationFilterChain.internalDoFi
>> lter(ApplicationFilterChain.java:303)
>> at org.apache.catalina.core.ApplicationFilterChain.doFilter(App
>> licationFilterChain.java:208)
>> at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilte
>> r.java:52)
>> at org.apache.catalina.core.ApplicationFilterChain.internalDoFi
>> lter(ApplicationFilterChain.java:241)
>> at org.apache.catalina.core.ApplicationFilterChain.doFilter(App
>> licationFilterChain.java:208)
>> at org.apache.catalina.core.ApplicationDispatcher.invoke(Applic
>> ationDispatcher.java:748)
>> at org.apache.catalina.core.ApplicationDispatcher.processReques
>> t(ApplicationDispatcher.java:486)
>> at org.apache.catalina.core.ApplicationDispatcher.doForward(App
>> licationDispatcher.java:411)
>> at org.apache.catalina.core.ApplicationDispatcher.forward(Appli
>> cationDispatcher.java:338)
>>
>>
>> Caused by: java.lang.RuntimeException: Failed : HTTP error code : 500
>> at org.apache.jsp.login_jsp._jspService(login_jsp.java:353)
>> at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>> at org.apache.jasper.servlet.JspServletWrapper.service(JspServl
>> etWrapper.java:432)
>> ... 55 more
>>
>>
>> Thanks
>>
>
>
>
> --
> Denuwanthi De Silva
> Senior Software Engineer;
> WSO2 Inc.; http://wso2.com,
> Email: denuwan...@wso2.com
> Blog: https://denuwanthi.wordpress.com/
>



-- 
Denuwanthi De Silva
Senior Software Engineer;
WSO2 Inc.; http://wso2.com,
Email: denuwan...@wso2.com
Blog: https://denuwanthi.wordpress.com/
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] Invoking a Jaggery api via HttpURLConnection

2016-09-23 Thread Denuwanthi De Silva
Hi Sameera,

I could get it working with following approach[1]:

var headers ={"Accept" : "application/json"};
var response = get(url,null,headers,'text');



[1]
http://stackoverflow.com/questions/34505509/jaggeryjs-ajax-call-get-method

Thanks

On Fri, Sep 23, 2016 at 5:21 PM, Denuwanthi De Silva 
wrote:

> Hi Sameera,
>
> Please find the stacktrace
>
> Stacktrace:
> at org.apache.jasper.servlet.JspServletWrapper.handleJspException(
> JspServletWrapper.java:568)
> at org.apache.jasper.servlet.JspServletWrapper.service(
> JspServletWrapper.java:470)
> at org.apache.jasper.servlet.JspServlet.serviceJspFile(
> JspServlet.java:395)
> at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> ApplicationFilterChain.java:303)
> at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> ApplicationFilterChain.java:208)
> at org.apache.tomcat.websocket.server.WsFilter.doFilter(
> WsFilter.java:52)
> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> ApplicationFilterChain.java:241)
> at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> ApplicationFilterChain.java:208)
> at org.apache.catalina.core.ApplicationDispatcher.invoke(
> ApplicationDispatcher.java:748)
> at org.apache.catalina.core.ApplicationDispatcher.processRequest(
> ApplicationDispatcher.java:486)
> at org.apache.catalina.core.ApplicationDispatcher.doForward(
> ApplicationDispatcher.java:411)
> at org.apache.catalina.core.ApplicationDispatcher.forward(
> ApplicationDispatcher.java:338)
>
>
> Caused by: java.lang.RuntimeException: Failed : HTTP error code : 500
> at org.apache.jsp.login_jsp._jspService(login_jsp.java:353)
> at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
> at org.apache.jasper.servlet.JspServletWrapper.service(
> JspServletWrapper.java:432)
> ... 55 more
>
>
> Thanks
>



-- 
Denuwanthi De Silva
Senior Software Engineer;
WSO2 Inc.; http://wso2.com,
Email: denuwan...@wso2.com
Blog: https://denuwanthi.wordpress.com/
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] Invoking a Jaggery api via HttpURLConnection

2016-09-23 Thread Denuwanthi De Silva
Hi Sameera,

Please find the stacktrace

Stacktrace:
at
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:568)
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:470)
at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:748)
at
org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:486)
at
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:411)
at
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:338)


Caused by: java.lang.RuntimeException: Failed : HTTP error code : 500
at org.apache.jsp.login_jsp._jspService(login_jsp.java:353)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
... 55 more


Thanks
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] Invoking a Jaggery api via HttpURLConnection

2016-09-23 Thread Sameera Medagammaddegedara
Some additional suggestions for organizing the above code:



<%
(function(request,response){

   var method = request.getMethod();

function doGet(req,res) {
   
}

   switch(method) {

  case 'GET':
   doGet(request,response);
   break;
  default:

   break;
  }

}(request,response));
%>



On Fri, Sep 23, 2016 at 5:11 PM, Sameera Medagammaddegedara <
samee...@wso2.com> wrote:

> EDIT:
> Please post the error you get afterwards.
>
> On Fri, Sep 23, 2016 at 5:11 PM, Sameera Medagammaddegedara <
> samee...@wso2.com> wrote:
>
>> Hi Denuwanthi,
>>
>> Can you please change your jag to the following:
>>
>> <%
>>   try {
>>
>>  } catch (e) {
>> log.error(e);
>> response.status=500;
>> var msg = {};
>>msg.status = 500;
>> msg.error = "Failed invoking remote endpoint";
>> print(msg);
>>  }
>>
>> %>
>>
>> On Fri, Sep 23, 2016 at 5:04 PM, Denuwanthi De Silva > > wrote:
>>
>>> Hi,
>>>
>>> I have .jsp file, in which I want to invoke a jaggery api.
>>>
>>> The content inside .jsp file is as below:
>>>
>>> URL url = new URL(baseURL + *"/user-login/user/authenticate/add*?scope="
>>> + URLEncoder.encode(scope, "UTF-8") + "=" + redirectUri +
>>> "=" + clientId + "=" + arc + "=" +
>>> responseType + "=" + operator + "=" +
>>> msisdn+"="+nonce+"="+state+"="+baseURL);
>>> HttpURLConnection conn = (HttpURLConnection)
>>> url.openConnection();
>>> conn.setRequestMethod("GET");
>>> conn.setRequestProperty("Accept",
>>> "application/json");
>>> if (conn.getResponseCode() != 200) {
>>> throw new RuntimeException("Failed :
>>> HTTP error code : " + conn.getResponseCode());
>>> }
>>>
>>> The jaggery.conf file contains the url mapping as follows:
>>> {
>>> "urlMappings": [
>>> {
>>> "url": *"/user/authenticate/add*",
>>> "path": "/sendAuthentication.jag"
>>> }
>>> ]
>>> }
>>>
>>> The sendAuthentication.jag content is as follows:
>>> Inside the jaggery api file I call a JAX-RS webapp in the path
>>> *'user-registration/webresources/endpoint/user/authenticate/add'*
>>>
>>>
>>> <%
>>> var METHOD = request.getMethod();
>>> var log = new Log();
>>> switch (METHOD) {
>>> case 'GET':
>>> var baseUrl = request.getParameter('baseUrl');
>>> var scope = request.getParameter('scope');
>>> var redirectUri = request.getParameter('redirecturi');
>>> var clientId = request.getParameter('clientid');
>>> var arc = request.getParameter('acrvalue');
>>> var responseType = request.getParameter('responsetype');
>>> var operator = request.getParameter('operator');
>>> var msisdn = request.getParameter('msisdn');
>>> var nonce = request.getParameter('nonce');
>>> var state = request.getParameter('state');
>>> var url  = baseUrl+"/user-registration/we
>>> bresources/endpoint/user/authenticate/add?scope=" + scope +
>>> "=" + redirectUri + "=" + clientId + "=" +
>>> arc + "=" + responseType + "=" + operator +
>>> "=" + msisdn+"="+nonce+"="+state;
>>> var response = get(url,{},"json");
>>> log.info(response);
>>> //log.info(response.data.);
>>>
>>> }
>>> %>
>>>
>>>
>>> The above approach did not work. When invoke the .jsp file it fails with
>>> HTTP error code : 500 at conn.getResponseCode() != 200 condition check.
>>>
>>> Can anyone point me to a proper way to acheive calling to JAX-RS
>>> endpoint through jaggery api, which in turn is called inside JSP file?
>>>
>>> Thanks,
>>>
>>> --
>>> Denuwanthi De Silva
>>> Senior Software Engineer;
>>> WSO2 Inc.; http://wso2.com,
>>> Email: denuwan...@wso2.com
>>> Blog: https://denuwanthi.wordpress.com/
>>>
>>
>>
>>
>> --
>> Sameera Medagammaddegedara
>> Software Engineer
>>
>> Contact:
>> Email: samee...@wso2.com
>> Mobile: + 94 077 255 3005
>>
>
>
>
> --
> Sameera Medagammaddegedara
> Software Engineer
>
> Contact:
> Email: samee...@wso2.com
> Mobile: + 94 077 255 3005
>



-- 
Sameera Medagammaddegedara
Software Engineer

Contact:
Email: samee...@wso2.com
Mobile: + 94 077 255 3005
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] Invoking a Jaggery api via HttpURLConnection

2016-09-23 Thread Sameera Medagammaddegedara
EDIT:
Please post the error you get afterwards.

On Fri, Sep 23, 2016 at 5:11 PM, Sameera Medagammaddegedara <
samee...@wso2.com> wrote:

> Hi Denuwanthi,
>
> Can you please change your jag to the following:
>
> <%
>   try {
>
>  } catch (e) {
> log.error(e);
> response.status=500;
> var msg = {};
>msg.status = 500;
> msg.error = "Failed invoking remote endpoint";
> print(msg);
>  }
>
> %>
>
> On Fri, Sep 23, 2016 at 5:04 PM, Denuwanthi De Silva 
> wrote:
>
>> Hi,
>>
>> I have .jsp file, in which I want to invoke a jaggery api.
>>
>> The content inside .jsp file is as below:
>>
>> URL url = new URL(baseURL + *"/user-login/user/authenticate/add*?scope="
>> + URLEncoder.encode(scope, "UTF-8") + "=" + redirectUri +
>> "=" + clientId + "=" + arc + "=" +
>> responseType + "=" + operator + "=" +
>> msisdn+"="+nonce+"="+state+"="+baseURL);
>> HttpURLConnection conn = (HttpURLConnection)
>> url.openConnection();
>> conn.setRequestMethod("GET");
>> conn.setRequestProperty("Accept",
>> "application/json");
>> if (conn.getResponseCode() != 200) {
>> throw new RuntimeException("Failed : HTTP
>> error code : " + conn.getResponseCode());
>> }
>>
>> The jaggery.conf file contains the url mapping as follows:
>> {
>> "urlMappings": [
>> {
>> "url": *"/user/authenticate/add*",
>> "path": "/sendAuthentication.jag"
>> }
>> ]
>> }
>>
>> The sendAuthentication.jag content is as follows:
>> Inside the jaggery api file I call a JAX-RS webapp in the path
>> *'user-registration/webresources/endpoint/user/authenticate/add'*
>>
>>
>> <%
>> var METHOD = request.getMethod();
>> var log = new Log();
>> switch (METHOD) {
>> case 'GET':
>> var baseUrl = request.getParameter('baseUrl');
>> var scope = request.getParameter('scope');
>> var redirectUri = request.getParameter('redirecturi');
>> var clientId = request.getParameter('clientid');
>> var arc = request.getParameter('acrvalue');
>> var responseType = request.getParameter('responsetype');
>> var operator = request.getParameter('operator');
>> var msisdn = request.getParameter('msisdn');
>> var nonce = request.getParameter('nonce');
>> var state = request.getParameter('state');
>> var url  = baseUrl+"/user-registration/we
>> bresources/endpoint/user/authenticate/add?scope=" + scope +
>> "=" + redirectUri + "=" + clientId + "=" +
>> arc + "=" + responseType + "=" + operator +
>> "=" + msisdn+"="+nonce+"="+state;
>> var response = get(url,{},"json");
>> log.info(response);
>> //log.info(response.data.);
>>
>> }
>> %>
>>
>>
>> The above approach did not work. When invoke the .jsp file it fails with
>> HTTP error code : 500 at conn.getResponseCode() != 200 condition check.
>>
>> Can anyone point me to a proper way to acheive calling to JAX-RS endpoint
>> through jaggery api, which in turn is called inside JSP file?
>>
>> Thanks,
>>
>> --
>> Denuwanthi De Silva
>> Senior Software Engineer;
>> WSO2 Inc.; http://wso2.com,
>> Email: denuwan...@wso2.com
>> Blog: https://denuwanthi.wordpress.com/
>>
>
>
>
> --
> Sameera Medagammaddegedara
> Software Engineer
>
> Contact:
> Email: samee...@wso2.com
> Mobile: + 94 077 255 3005
>



-- 
Sameera Medagammaddegedara
Software Engineer

Contact:
Email: samee...@wso2.com
Mobile: + 94 077 255 3005
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] Invoking a Jaggery api via HttpURLConnection

2016-09-23 Thread Sameera Medagammaddegedara
Hi Denuwanthi,

Can you please change your jag to the following:

<%
  try {
   
 } catch (e) {
log.error(e);
response.status=500;
var msg = {};
   msg.status = 500;
msg.error = "Failed invoking remote endpoint";
print(msg);
 }

%>

On Fri, Sep 23, 2016 at 5:04 PM, Denuwanthi De Silva 
wrote:

> Hi,
>
> I have .jsp file, in which I want to invoke a jaggery api.
>
> The content inside .jsp file is as below:
>
> URL url = new URL(baseURL + *"/user-login/user/authenticate/add*?scope="
> + URLEncoder.encode(scope, "UTF-8") + "=" + redirectUri +
> "=" + clientId + "=" + arc + "=" +
> responseType + "=" + operator + "=" +
> msisdn+"="+nonce+"="+state+"="+baseURL);
> HttpURLConnection conn = (HttpURLConnection)
> url.openConnection();
> conn.setRequestMethod("GET");
> conn.setRequestProperty("Accept",
> "application/json");
> if (conn.getResponseCode() != 200) {
> throw new RuntimeException("Failed : HTTP
> error code : " + conn.getResponseCode());
> }
>
> The jaggery.conf file contains the url mapping as follows:
> {
> "urlMappings": [
> {
> "url": *"/user/authenticate/add*",
> "path": "/sendAuthentication.jag"
> }
> ]
> }
>
> The sendAuthentication.jag content is as follows:
> Inside the jaggery api file I call a JAX-RS webapp in the path
> *'user-registration/webresources/endpoint/user/authenticate/add'*
>
>
> <%
> var METHOD = request.getMethod();
> var log = new Log();
> switch (METHOD) {
> case 'GET':
> var baseUrl = request.getParameter('baseUrl');
> var scope = request.getParameter('scope');
> var redirectUri = request.getParameter('redirecturi');
> var clientId = request.getParameter('clientid');
> var arc = request.getParameter('acrvalue');
> var responseType = request.getParameter('responsetype');
> var operator = request.getParameter('operator');
> var msisdn = request.getParameter('msisdn');
> var nonce = request.getParameter('nonce');
> var state = request.getParameter('state');
> var url  = 
> baseUrl+"/user-registration/webresources/endpoint/user/authenticate/add?scope="
> + scope + "=" + redirectUri + "=" + clientId +
> "=" + arc + "=" + responseType + "=" +
> operator + "=" + msisdn+"="+nonce+"="+state;
> var response = get(url,{},"json");
> log.info(response);
> //log.info(response.data.);
>
> }
> %>
>
>
> The above approach did not work. When invoke the .jsp file it fails with
> HTTP error code : 500 at conn.getResponseCode() != 200 condition check.
>
> Can anyone point me to a proper way to acheive calling to JAX-RS endpoint
> through jaggery api, which in turn is called inside JSP file?
>
> Thanks,
>
> --
> Denuwanthi De Silva
> Senior Software Engineer;
> WSO2 Inc.; http://wso2.com,
> Email: denuwan...@wso2.com
> Blog: https://denuwanthi.wordpress.com/
>



-- 
Sameera Medagammaddegedara
Software Engineer

Contact:
Email: samee...@wso2.com
Mobile: + 94 077 255 3005
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


[Dev] Invoking a Jaggery api via HttpURLConnection

2016-09-23 Thread Denuwanthi De Silva
Hi,

I have .jsp file, in which I want to invoke a jaggery api.

The content inside .jsp file is as below:

URL url = new URL(baseURL + *"/user-login/user/authenticate/add*?scope=" +
URLEncoder.encode(scope, "UTF-8") + "=" + redirectUri +
"=" + clientId + "=" + arc + "=" +
responseType + "=" + operator + "=" +
msisdn+"="+nonce+"="+state+"="+baseURL);
HttpURLConnection conn = (HttpURLConnection)
url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("Accept",
"application/json");
if (conn.getResponseCode() != 200) {
throw new RuntimeException("Failed : HTTP
error code : " + conn.getResponseCode());
}

The jaggery.conf file contains the url mapping as follows:
{
"urlMappings": [
{
"url": *"/user/authenticate/add*",
"path": "/sendAuthentication.jag"
}
]
}

The sendAuthentication.jag content is as follows:
Inside the jaggery api file I call a JAX-RS webapp in the path
*'user-registration/webresources/endpoint/user/authenticate/add'*


<%
var METHOD = request.getMethod();
var log = new Log();
switch (METHOD) {
case 'GET':
var baseUrl = request.getParameter('baseUrl');
var scope = request.getParameter('scope');
var redirectUri = request.getParameter('redirecturi');
var clientId = request.getParameter('clientid');
var arc = request.getParameter('acrvalue');
var responseType = request.getParameter('responsetype');
var operator = request.getParameter('operator');
var msisdn = request.getParameter('msisdn');
var nonce = request.getParameter('nonce');
var state = request.getParameter('state');
var url  =
baseUrl+"/user-registration/webresources/endpoint/user/authenticate/add?scope="
+ scope + "=" + redirectUri + "=" + clientId +
"=" + arc + "=" + responseType + "=" +
operator + "=" + msisdn+"="+nonce+"="+state;
var response = get(url,{},"json");
log.info(response);
//log.info(response.data.);

}
%>


The above approach did not work. When invoke the .jsp file it fails with
HTTP error code : 500 at conn.getResponseCode() != 200 condition check.

Can anyone point me to a proper way to acheive calling to JAX-RS endpoint
through jaggery api, which in turn is called inside JSP file?

Thanks,

-- 
Denuwanthi De Silva
Senior Software Engineer;
WSO2 Inc.; http://wso2.com,
Email: denuwan...@wso2.com
Blog: https://denuwanthi.wordpress.com/
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev