Fórum
liferay 6.2: json call
Akram MONCER, modificado 10 Anos atrás.
liferay 6.2: json call
Regular Member Postagens: 106 Data de Entrada: 25/09/12 Postagens Recentes
hi
i try to make a json call to a liferay server, you can see the js code below :
test@liferay.com is an admin user.
when i make the call i get this result :
client side (alert box): {exception : 'authenticated access required'}
in server side (log):
anyone have an idea how to resolve this problem. Thanks.
i try to make a json call to a liferay server, you can see the js code below :
$.ajax({
url: 'http://localhost:8080/api/jsonws/user/get-user-by-email-address/company-id/10154/email-address/test%40liferay.com',
type: "get",
data: '',
dataType: "json",
username : "test@liferay.com",
password : "test",
success: function(data){
alert(data);
},
error:function(){
alert('error');
}
});
test@liferay.com is an admin user.
when i make the call i get this result :
client side (alert box): {exception : 'authenticated access required'}
in server side (log):
ERROR [http-bio-9080-exec-3][AuthVerifierPipeline:331] Skipping com.liferay.portal.security.auth.BasicAuthHeaderAutoLogin
com.liferay.portal.security.auth.AuthException: com.liferay.portal.security.auth.AutoLoginException: com.liferay.portal.security.auth.AuthException
at com.liferay.portal.security.auth.BasicAuthHeaderAutoLogin.verify(BasicAuthHeaderAutoLogin.java:116)
at com.liferay.portal.security.auth.AuthVerifierPipeline._verifyRequest(AuthVerifierPipeline.java:325)
at com.liferay.portal.security.auth.AuthVerifierPipeline.verifyRequest(AuthVerifierPipeline.java:75)
at com.liferay.portal.security.ac.AccessControlImpl.verifyRequest(AccessControlImpl.java:96)
at com.liferay.portal.security.ac.AccessControlUtil.verifyRequest(AccessControlUtil.java:69)
at com.liferay.portal.servlet.filters.authverifier.AuthVerifierFilter.processFilter(AuthVerifierFilter.java:134)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:59)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:204)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:109)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:169)
at com.liferay.portal.servlet.filters.jsoncontenttype.JSONContentTypeFilter.processFilter(JSONContentTypeFilter.java:42)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:59)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:204)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:109)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:169)
at com.liferay.portal.servlet.filters.sso.ntlm.NtlmPostFilter.processFilter(NtlmPostFilter.java:83)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:59)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:204)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:109)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:169)
at com.liferay.portal.sharepoint.SharepointFilter.processFilter(SharepointFilter.java:88)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:59)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:204)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:109)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:169)
at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.processFilter(VirtualHostFilter.java:226)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:59)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:204)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:109)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:185)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:738)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:204)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:109)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:165)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:165)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:185)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1008)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)
Caused by: com.liferay.portal.security.auth.AutoLoginException: com.liferay.portal.security.auth.AuthException
at com.liferay.portal.security.auth.BaseAutoLogin.doHandleException(BaseAutoLogin.java:56)
at com.liferay.portal.security.auth.BaseAutoLogin.handleException(BaseAutoLogin.java:34)
at com.liferay.portal.security.auth.BaseAutoLogin.login(BaseAutoLogin.java:46)
at com.liferay.portal.security.auth.BasicAuthHeaderAutoLogin.verify(BasicAuthHeaderAutoLogin.java:83)
... 56 more
Caused by: com.liferay.portal.security.auth.AuthException
at com.liferay.portlet.login.util.LoginUtil.getAuthenticatedUserId(LoginUtil.java:150)
at com.liferay.portal.security.auth.BasicAuthHeaderAutoLogin.doLogin(BasicAuthHeaderAutoLogin.java:172)
at com.liferay.portal.security.auth.BaseAutoLogin.login(BaseAutoLogin.java:43)
... 57 more
anyone have an idea how to resolve this problem. Thanks.
Nagendra Kumar Busam, modificado 10 Anos atrás.
RE: liferay 6.2: json call
Liferay Master Postagens: 678 Data de Entrada: 07/07/09 Postagens Recentes
Can you try access getting using below,add the import for AuthTokenUtil in your jsp
$.ajax({
url: '/api/jsonws/user/get-user-by-email-address/company-id/10154/email-address/test%40liferay.com?p_auth=<%= AuthTokenUtil.getToken(request) %>',
type: "get",
dataType: "json",
success: function(data){
alert(data);
},
error:function(){
alert('error');
}
});
Akram MONCER, modificado 10 Anos atrás.
RE: liferay 6.2: json call
Regular Member Postagens: 106 Data de Entrada: 25/09/12 Postagens Recentes
hi Nagendra, thank you for your responce.
the problem is i can't use this code :
because i'm not working in liferay envirement only the server is on liferay, the client is completely separated from liferay.
the problem is i can't use this code :
<%= AuthTokenUtil.getToken(request) %>
because i'm not working in liferay envirement only the server is on liferay, the client is completely separated from liferay.
Nagendra Kumar Busam, modificado 10 Anos atrás.
RE: liferay 6.2: json call
Liferay Master Postagens: 678 Data de Entrada: 07/07/09 Postagens Recentes
Can you try httpclient way
https://www.liferay.com/web/james.falkner/blog/-/blogs/9308485
https://www.liferay.com/web/james.falkner/blog/-/blogs/9308485
Meera Prince, modificado 9 Anos atrás.
RE: liferay 6.2: json call
Liferay Legend Postagens: 1111 Data de Entrada: 08/02/11 Postagens Recentes
HI
Use as follows
$(document).on('ready',function(){
var username ="test@liferay.com";
var password ="test";
function make_base_auth(user, password) {
var tok = user + ':' + password;
var hash = btoa(tok);
return "Basic " + hash;
}
$.ajax({
url: 'http://localhost:8080/LiferayJSONWebservices-portlet/api/jsonws/employee/get-employee/employee-id/1',
dataType: "json",
type: "get",
success: function(data){
alert(data.employeeName);
},
beforeSend: function(xhr){
xhr.setRequestHeader('Authorization',make_base_auth(username, password));
},
complete: function(){
},
error: function(){
}
});
});
Have a look into following link it may help you
http://www.liferaysavvy.com/2014/05/consuming-liferay-json-web-services.html
Regards,
Meera Prince
Use as follows
$(document).on('ready',function(){
var username ="test@liferay.com";
var password ="test";
function make_base_auth(user, password) {
var tok = user + ':' + password;
var hash = btoa(tok);
return "Basic " + hash;
}
$.ajax({
url: 'http://localhost:8080/LiferayJSONWebservices-portlet/api/jsonws/employee/get-employee/employee-id/1',
dataType: "json",
type: "get",
success: function(data){
alert(data.employeeName);
},
beforeSend: function(xhr){
xhr.setRequestHeader('Authorization',make_base_auth(username, password));
},
complete: function(){
},
error: function(){
}
});
});
Have a look into following link it may help you
http://www.liferaysavvy.com/2014/05/consuming-liferay-json-web-services.html
Regards,
Meera Prince
Suresh Nimmakayala, modificado 9 Anos atrás.
RE: liferay 6.2: json call
Liferay Master Postagens: 690 Data de Entrada: 18/08/04 Postagens Recentes
Hi Akram,
with the code Tweek if it works easy as,
just wondering what is you portal-ext properties for the following ?
json.service.auth.token.enabled
jsonws.servlet.hosts.allowed
with the code Tweek if it works easy as,
just wondering what is you portal-ext properties for the following ?
json.service.auth.token.enabled
jsonws.servlet.hosts.allowed