Vista Combinata Vista Piatta Vista ad Albero
Discussioni [ Precedente | Successivo ]
toggle
Mathew Anderson
Internal Server error with Blogs Aggregator
23 aprile 2013 6.14
Risposta

Mathew Anderson

Punteggio: Junior Member

Messaggi: 29

Data di Iscrizione: 22 aprile 2013

Messaggi recenti

Hello -
I have LR 6.1.1 CE up and running on weblogic 12c in a clustered environment. It seems to work pretty well. Weblogic is setup with 2 manged servers on two separate hosts, using weblogic's clustering. Java is jrockit-jdk1.6.0_29-R28.2.2-4.1.0.

The issue that I am seeing is when I add in the "Blogs Aggregator" portlet. Blog posts work normally and I can comment/add without issue. I can view other users blog values as well. But, when using the portlet, the links do not work. For example, when I click on the title of a blog, I get an Internal Server Error:

Internal Server Error

An error occurred while accessing the requested resource.

https://MYSERVER/c/blogs/find_entry?redirect=https%3A%2F%2(rest removed because it is rather long)


The weblogic log files show the following stack trace:

ERROR [ ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'][status_jsp:690] java.lang.ClassCastException: com.liferay.portal.kernel.servlet.NonSerializableObjectHandler
java.lang.ClassCastException: com.liferay.portal.kernel.servlet.NonSerializableObjectHandler
at com.liferay.util.CookieUtil._getCookieMap(CookieUtil.java:59)
at com.liferay.util.CookieUtil.get(CookieUtil.java:39)
at com.liferay.portal.util.CookieKeys.getCookie(CookieKeys.java:103)
at com.liferay.portal.util.CookieKeys.hasSessionId(CookieKeys.java:185)
at com.liferay.portal.servlet.filters.absoluteredirects.AbsoluteRedirectsResponse.sendRedirect(AbsoluteRedirectsResponse.java:52)
at javax.servlet.http.HttpServletResponseWrapper.sendRedirect(HttpServletResponseWrapper.java:168)
at com.liferay.portal.kernel.servlet.HeaderCacheServletResponse.sendRedirect(HeaderCacheServletResponse.java:188)
at com.liferay.portal.struts.FindAction.execute(FindAction.java:95)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:176)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1198)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:416)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:561)
at com.liferay.portal.servlet.MainServlet.service(MainServlet.java:537)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:845)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:242)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:352)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:25)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:75)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:72)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
at com.liferay.portal.servlet.filters.strip.StripFilter.processFilter(StripFilter.java:335)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:57)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:165)
at com.liferay.portal.servlet.filters.secure.SecureFilter.processFilter(SecureFilter.java:294)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:57)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:165)
at com.liferay.portal.servlet.filters.sso.ntlm.NtlmPostFilter.processFilter(NtlmPostFilter.java:84)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:57)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:165)
at com.liferay.portal.sharepoint.SharepointFilter.processFilter(SharepointFilter.java:83)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:57)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:165)
at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.processFilter(VirtualHostFilter.java:219)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:57)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:95)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:738)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:95)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:95)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:95)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:74)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:75)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3288)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3254)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:57)
at weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2163)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2091)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2074)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1512)
at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:255)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)


Not only does the /c/blogs url pull this error, but when a link goes to /c/my_sites I get a "500 -- Internal Server Error", with a stack trace that is almost the same:

<Error> <HTTP> <BEA-101017> <[ServletContext@415931974[app:liferay-portal-6.1.1-ce-ga2-20120731132656558 module:liferay-portal-6.1.1-ce-ga2-20120731132656558.war path:null spec-version:3.0]] Root cause of ServletException.
java.lang.ClassCastException: com.liferay.portal.kernel.servlet.NonSerializableObjectHandler
at com.liferay.util.CookieUtil._getCookieMap(CookieUtil.java:59)
at com.liferay.util.CookieUtil.get(CookieUtil.java:39)
at com.liferay.portal.util.CookieKeys.getCookie(CookieKeys.java:103)
at com.liferay.portal.util.CookieKeys.hasSessionId(CookieKeys.java:185)
at com.liferay.portal.servlet.filters.absoluteredirects.AbsoluteRedirectsResponse.sendRedirect(AbsoluteRedirectsResponse.java:52)
Truncated. see log file for complete stacktrace
>


Anyone run into this issue? It looks like some of the objects may not be Serializeable, so they do not work in a clustered environment.
Anonimo
RE: Internal Server error with Blogs Aggregator
23 aprile 2013 16.02
Risposta

Anonimo

Looks like it might be related to this : http://issues.liferay.com/browse/LPS-31885

In which case you might have to wait for the next version release if you are on CE.
Mathew Anderson
RE: Internal Server error with Blogs Aggregator
24 aprile 2013 7.42
Risposta

Mathew Anderson

Punteggio: Junior Member

Messaggi: 29

Data di Iscrizione: 22 aprile 2013

Messaggi recenti

James, thanks for the response.

It could be related yes. I did notice the error from the HIRA when I went to use CAS as the authentication agent. I changed it to use a custom authen hook (apache auth) and the blank page went away. One thing I failed ot add to my first was that it worked until I attempted to cluster the LR install.

Is it possible this has to do with using the j2ee engine clustering?

Edit - moving back to a single node - I can get it to work correctly.

Edit 2-
Ok interesting..

Even on a single node, I can get it to break,
Since this is to be a clustered system, I have apache as a front end. Apache does reside on a separate machine. In the portal settings, If I change the "Virtual Host" line to the apache hostname, it breaks. If I change it to the node name, it works fine.

I would think I would need to put the name my apache instance answers to here
Mathew Anderson
RE: Internal Server error with Blogs Aggregator
24 aprile 2013 13.11
Risposta

Mathew Anderson

Punteggio: Junior Member

Messaggi: 29

Data di Iscrizione: 22 aprile 2013

Messaggi recenti

I set the Virtual Host entry up two different things - valid dns name from one of my other servers, invalid dns name that does not exist on my network.

Either either of them set, the links off the portlet now work. but resetting it back to the node name, or the DNS name that apache answers to, I get the error.

This is starting to confuse me.

So, Control-Panel -> Portal -> Portal Settings

What is the purpose of "Virtual Host" in the General area?
Anonimo
RE: Internal Server error with Blogs Aggregator
24 aprile 2013 13.28
Risposta

Anonimo

Hi Matthew,

To answer your first post, it might be with clustering. How have you configured clustering on your end? Are you using it through Liferay's implementation or other means?

On the second, I believe the virtual host in the general tab should just be a way to set it without using the portal-ext.properties if you so choose. IE: changing it to www.localhost.com:8080 (if you have www.localhost.com configured) will take you to the portal.
Anonimo
RE: Internal Server error with Blogs Aggregator
24 aprile 2013 13.31
Risposta

Anonimo

Also Matthew another thing came to my mind where I encountered an issue like this before, have you tested in firebug to see what the broken links do? I have seen before where they were incorrectly generated unless you used : redirect.url.security.mode=domain in portal-ext.properties, this sets it so that Liferay portal will only redirect users to domains listed in the property redirect.url.domain.allowed.
Mathew Anderson
RE: Internal Server error with Blogs Aggregator
24 aprile 2013 13.39
Risposta

Mathew Anderson

Punteggio: Junior Member

Messaggi: 29

Data di Iscrizione: 22 aprile 2013

Messaggi recenti

Setting it up without clustering I get the same issue. I didn't notice it until I clustered it, due to the Virtual Host entry. I modified it and stopped using the hostname of one of the nodes.

Test cases -
Single Node, using weblogic port - no issue
Single Node using apache front end (a separate machine) - issue
Clustered using weblogic clustering and an apache server -ssue
Clustered using LR's clustering and an apache server - issue

On the last 3 test cases, when I changed the Virtual Host I get the following

Node name - No issue - URLS are rewritten so it doesn't really work all that well.
Apache Name - issue stated above
other name in dns (not related to project) - no issue
other name not in dns - no issue


For the portal-ext.properties, is it the :
web.sever.host
variable? or some other one? I do have this set to the apache hostname in the above tests. I do know that LR complains if I try and leave it empty.
Anonimo
RE: Internal Server error with Blogs Aggregator
24 aprile 2013 15.06
Risposta

Anonimo

Yes it should be web.server.host.

#Set the hostname that will be used when the portlet generates URLs.
# Leaving this blank will mean the host is derived from the servlet
# container.
#
web.server.host=
Glenn Laenen
RE: Internal Server error with Blogs Aggregator
9 luglio 2013 8.49
Risposta

Glenn Laenen

Punteggio: New Member

Messaggi: 3

Data di Iscrizione: 9 luglio 2013

Messaggi recenti

Hello,

Hello did you get this solved? I'm having the same issue on an apache/weblogic setup.
Setting the virtual host to anything but the domain name configured on the apache makes the Blogs Aggregator work but brakes the link generation at other places.

I've tried every combination of virtual host and web.server.host but I can't seem to figure it out.

Thanks,
Glenn
Mathew Anderson
RE: Internal Server error with Blogs Aggregator
10 luglio 2013 8.00
Risposta

Mathew Anderson

Punteggio: Junior Member

Messaggi: 29

Data di Iscrizione: 22 aprile 2013

Messaggi recenti

Yes, I ended up setting web.sever.host to the FQDN.
I also set WebLogic Plug-In Enabled (Under Configuration->General->Advanced) for each managed server.
Glenn Laenen
RE: Internal Server error with Blogs Aggregator
12 luglio 2013 3.47
Risposta

Glenn Laenen

Punteggio: New Member

Messaggi: 3

Data di Iscrizione: 9 luglio 2013

Messaggi recenti

And did you set your Virtual Host in Portal Instances to the FQDN or on localhost?
Thanks,
Glenn
Mathew Anderson
RE: Internal Server error with Blogs Aggregator
12 luglio 2013 5.39
Risposta

Mathew Anderson

Punteggio: Junior Member

Messaggi: 29

Data di Iscrizione: 22 aprile 2013

Messaggi recenti

Virtual Host is set to localhost

Here are the three entries in my portal-ext,properties that I was working with during the time this issue came up

1web.server.host=myserver.host.domain
2web.server.display.node=true
3redirect.url.security.mode=domain


the redirect.url line is from a post above. The web.server.display.node is just for troubleshooting (puts the hostname on the various pages so you know which node you are connected to).
Glenn Laenen
RE: Internal Server error with Blogs Aggregator
16 luglio 2013 1.46
Risposta

Glenn Laenen

Punteggio: New Member

Messaggi: 3

Data di Iscrizione: 9 luglio 2013

Messaggi recenti

thanks, this solved my issue.