Forum Moderators: phranque

Message Too Old, No Replies

apache front end with weblogic portal

         

suruchi

10:45 am on Dec 14, 2009 (gmt 0)

10+ Year Member



Hi All

I have a portal deployed on weblogic server.
I have to use friendly URLs for the variuos URLS of weblogic portal application.
so i have configured weblogic plugin with apache using the proxy module.
My httpd file looks like:

<VirtualHost *:80>
ProxyPass /login "http://apacheHost/WarFileName/appmanager/desktopName/portalName/login&_default"
ProxyPass /loginDone "http://apacheHost/WarFileName/appmanager/desktopName/portalName?_nfpb=true&_windowLabel=login_1&_urlType=action"
</VirtualHost>

<IfModule mod_weblogic.c>
WeblogicHost host
WeblogicPort port
MatchExpression */WarFileName/*
</IfModule>

Now
when i hit
[apacheHost...]
i can see the login page successfully. (ie first proxypass worked fine)
but after clicking on the login button there,
the address bar shows me
[apacheHost...]
(ie second ProxyPass dint work)

Although i have an entry for this URL as well in the httpd file where i want to show /loginDone as the URL in address bar but i am not able to see this friendly URL
The same thing is happening for form actions on all portlets.

Any Suggestions would be realy helpful
Thanks

jdMorgan

1:29 pm on Dec 14, 2009 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



You need to check (and we'll need to know) the URLs given in the forms' "Submit" actions. As with all links on the pages of your site, these must be 'friendly' URLs.

There is no 'magic' involved in using 'friendly' URLs; The URL that appears in the HTML of your pages is the URL. That is, the act of publishing an <a href="xyz"> link or specifying a URL in a form action *defines* that URL. Once that URL is 'clicked,' there is nothing that can be done to modify it, because that's the address the user will see in his/her address bar.

When the URL-request arrives at your server, you can rewrite it to a different filepath than it would otherwise resolve to, or you can redirect it to a different URL. But the redirect isn't useful for 'fixing' URLs, since it occurs 'after the fact.' The URLs have to be correct in the links on your pages for everything to work as necessary for the best user experience and for search engine ranking.

Jim

suruchi

5:02 am on Dec 15, 2009 (gmt 0)

10+ Year Member



This is the action we are using in the form..in login.jsp:
<form id="login_form" name="login_form" action="<portlet:actionURL/>" method="post">

the login portlet java file contains the regular doview() method and processaction() method
on click of the login button, it goes to the processaction method of the login portlet.
and on successful authentication, we are not redirecting to any other portlet. but automaticaly the control goes to doview method t show the updated jsp(with successful authentication this time).

so on clck of this login button the URL is getting changed to that long URL(http://apacheHost/WarFileName/appmanager/desktopName/portalName?_nfpb=true&_windowLabel=login_1&_urlType=action),

while either it should have remained same ie
[apacheServer...]
becaues the page is not reloading

or it should have changed to
[apacheServer...]
because there is a mapping corresponding to the long URL mentioned.

Please let me know where am i goin wrong.

Thanks

jdMorgan

9:52 pm on Dec 15, 2009 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



I suspect that one of your scripts is invoking a redirect. Use the "Live HTTP Headers" add-on for Firefox/Mozilla (or a similar tool) to confirm this, and then look at your scripts -- Something somewhere is outputting a 301 or 302 status response, and specifying the 'unfriendly' URL as the "Location:" header value.

Jim