Showing posts with label lotus connections. Show all posts
Showing posts with label lotus connections. Show all posts

Wednesday, August 22, 2012

Lotus Connections / IBM HTTP Server (Apache) root directory redirect to application

When configuring Lotus Connections to use IBM HTTP server, it's always annoyed me that when typing in the URL minus an application, it takes me to an IBM HTTP server help screen. I've configured a redirect in Lotus Connections 2.5, however, I was unable to find my documentation. There are a few ways to accomplish this but I'm going to cover the one that works best for me. ( might not be the best solution for you ) So this post is how to configure a URL redirect / rewrite from the root / to an application ( /homepage ) in Lotus Connections using IBM HTTP server.

1. First, locate your httpd.conf file the IBM HTTP Server is using. to load the module for redirect / rewrite, locate the line that says 

#LoadModule rewrite_module modules/mod_rewrite.so

and remove the # to uncomment

LoadModule rewrite_module modules/mod_rewrite.so

2. Next, locate the line that says DocumentRoot


and place a # in front of the line to comment it out.


3. Next locate the VirtualHost *:443
FYI,  blogger.com won't let me post the correct syntax for the VirtualHost *:443, please see the image below for the correct syntax
VirtualHost *:443
Servername lc.ozzyblogger.com
SSLEnable
/VirtualHost


and add two lines

VirtualHost *:443
Servername lc.ozzyblogger.com
SSLEnable
RewriteEngine on
RewriteRule ^/$ /homepage [R,L]
/VirtualHost

This will load the lc.theozzyblogger.com/homepage application when you type lc.ozzyblogger.com/ in the url  btw lc.theozzyblogger.com is not a real website, just an example :)

Note:

^ is the beginning of the line 
$ is the end of the line 
. is any single character except new line 
* is zero or more of character

4. Last, create a virtualhost entry for all port 80 requests to redirect to SSL at the end of the file

FYI, blogger.com won't let me post the correct syntax for the VirtualHost *:80, please see the image below for the correct syntax
VirtualHost *:80
RewriteEngine on
RewriteRule ^/$ /homepage [R,L]
# handy for seeing what's going on when the web server tries to redirect
#RewriteLog "C:/rwlog.txt"
#RewriteLogLevel 1
# if the port's not 443 (ssl)...
RewriteCond %{SERVER_PORT} !^443$
#...redirect it to the same page but make it SSL
RewriteRule ^(.*) https://%{SERVER_NAME}%{REQUEST_URI} [L,R]
/VirtualHost


That will take care of any requests that are typed as http://lc.theozzyblogger.com and redirect / rewrite as https://lc.theozzyblogger.com/homepage


Here are the web pages used as reference:


Configuring the IBM HTTP Server for SSL
http://publib.boulder.ibm.com/infocenter/ltscnnct/v2r0/index.jsp?topic=/com.ibm.lc_2.0_IC/t_configure_ihs.html 
Redirecting non-SSL (HTTP) requests to SSL (HTTPS) requests with IBM HTTP Server or Apache, and WebSphere Application Server
http://www-01.ibm.com/support/docview.wss?uid=swg21107738

Monday, May 17, 2010

Lotus Connections 2.5 issue

Shortly after setting up Lotus Connections 2.5 I needed to change session time out different from the default 30 minutes. As I started changing the timeouts on each enterprise application I noticed that the news application stopped working. I restarted the server and I then started getting the following errors while trying to access the home page:

Error

Oops, that didn't work

Something went wrong - click the back button and try again. If this doesn't work report the problem to the support forum.

com.ibm.websphere.servlet.error.ServletErrorReport: CLFRQ0355E: It is not possible to retrieve the tab instance ID. An error occurred while getting the internal ID of the authenticated user from the session.
com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.invokeFilters(DefaultExtensionProcessor.java:866)
com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:574)
com.ibm.ws.wswebcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:113)
com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3548)
com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:269)
com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:818)
com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1478)
com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:126)
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
com.ibm.io.async.ResultHandler.complete(ResultHandler.java:196)
com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:751)
com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:881)
com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1497)


Then I would receive the following error when access the wikis:

EJPVJ9104E: Unable to initialize application platform.

Which google returned only 2 websites with this error. The first one states:
EJPVJ9104E: Unable to initialize application platform.
Explanation: An error occurred while initializing the platform that this application was built on. No services will be available.
User Response: Examine the nested exception and determine the appropriate action. Often configuration is missing or incorrect, or the install was not properly completed.

http://publib.boulder.ibm.com/infocenter/ltscnnct/v2r0/topic/com.ibm.connections.25.help/com.ibm.quickr.share.resources.QkrShareMessages.html


and the second one relating to a pilot install. After looking at the systemout.log I found:

************ Start Display Current Environment ************
WebSphere Platform 6.1 [ND 6.1.0.29 cf290949.16] running with process name XXXXXXXNode01Cell\XXXXXXNode01\server1 and process id 4940
Detailed IFix information: Please use the versionInfo command to view this information
Host Operating System is Windows Server 2003, version 5.2 build 3790 Service Pack 2
Java version = 1.5.0, Java Compiler = j9jit23, Java VM name = IBM J9 VM
was.install.root = E:/IBM/WebSphere/AppServer
user.install.root = E:\IBM\WebSphere\AppServer\profiles\AppSrv01
Java Home = E:\IBM\WebSphere\AppServer\java\jre
ws.ext.dirs = E:/IBM/WebSphere/AppServer/java/lib;E:\IBM\WebSphere\AppServer\profiles\AppSrv01/classes;E:/IBM/WebSphere/AppServer/classes;E:/IBM/WebSphere/AppServer/lib;E:/IBM/WebSphere/AppServer/installedChannels;E:/IBM/WebSphere/AppServer/lib/ext;E:/IBM/WebSphere/AppServer/web/help;E:/IBM/WebSphere/AppServer/deploytool/itp/plugins/com.ibm.etools.ejbdeploy/runtime
Classpath = E:\IBM\WebSphere\AppServer\profiles\AppSrv01/properties;E:/IBM/WebSphere/AppServer/properties;E:/IBM/WebSphere/AppServer/lib/startup.jar;E:/IBM/WebSphere/AppServer/lib/bootstrap.jar;E:/IBM/WebSphere/AppServer/lib/j2ee.jar;E:/IBM/WebSphere/AppServer/lib/lmproxy.jar;E:/IBM/WebSphere/AppServer/lib/urlprotocols.jar;E:/IBM/WebSphere/AppServer/deploytool/itp/batchboot.jar;E:/IBM/WebSphere/AppServer/deploytool/itp/batch2.jar;E:/IBM/WebSphere/AppServer/java/lib/tools.jar
Java Library path = E:\IBM\WebSphere\AppServer\java\jre\bin;.;E:\IBM\WebSphere\AppServer\bin;E:\IBM\WebSphere\AppServer\java\bin;E:\IBM\WebSphere\AppServer\java\jre\bin;C:\Program Files\HP\NCU;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\system32\WBEM;E:\IBM\SQLLIB\BIN;E:\IBM\SQLLIB\FUNCTION;E:\IBM\SQLLIB\SAMPLES\REPL;E:\IBM\WebSphere\AppServer\lib\WMQ\java\lib
************* End Display Current Environment *************
[5/7/10 15:30:59:164 CDT] 00000037 SQLErrorCodes W org.springframework.jdbc.support.SQLErrorCodesFactory getErrorCodes Error while extracting database product name - falling back to empty error codes
org.springframework.jdbc.support.MetaDataAccessException: Error while extracting DatabaseMetaData; nested exception is java.sql.SQLException: [jcc][t4][2012][11248][3.50.152] Connection authorization failure occurred. Reason: Password expired. ERRORCODE=-4214, SQLSTATE=28000DSRA0010E: SQL State = 28000, Error Code = -4,214
at org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:290)
at org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:314)
at org.springframework.jdbc.support.SQLErrorCodesFactory.getErrorCodes(SQLErrorCodesFactory.java:216)
at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.setDataSource(SQLErrorCodeSQLExceptionTranslator.java:147)




I've truncated this error for display purposes. After Google searching for

Connection authorization failure occurred. Reason: Password expired. ERRORCODE=-4214

I found this website that explained the issue was the lcuser account. Sure enough the account was set to change password at next logon. I reset the password to the original password, cleared that check mark and marked "user cannot change password" and "Password never expires".


http://www-01.ibm.com/support/docview.wss?rs=3265&context=SSYGQH&dc=DB560&dc=DB520&uid=swg21329568&loc=en_US&cs=UTF-8&lang=en&rss=ct3265lotus


I then restated the server and the news enterprise application started and the everything worked.






Sunday, May 16, 2010

Been busy

It's been a while since my last post, so I decided to write a little bit of my last couple of months.

Lotus Sametime 8.5
After a few tries in my test environment, I have Lotus Sametime 8.5 up and running. I've hit some pitfalls and I hope to have more posted regarding that soon. Working with Websphere is different from anything I have seen. The new Sametime Proxy web client is very cool however I still cannot get it to communicate to the Sametime Meeting server, only with the Sametime Classic server. Also I had some issues installing the Sametime System Console. At first I thought it was related to the install path ( through about 4 trial and errors it seem the install path was the only thing causing this installation error ) However, the fifth time I installed the Sametime system console it worked so I am still trying to figure out that issue.



Lotus Connections 2.5
Lotus Connections 2.5 documentation helped me get Lotus Connections up and running with a stand alone install. However, the lack of documentation or even some of the confusing 'optional' configurations will cause the entire server to stop playing nice. I have a lot of good info from my Lotus Connections 2.5 experiences, again I will try and find time to post.


Lotus Domino 6.5 end of life support
Going from Lotus Domino 6.5 to 8.5.1 FP2 has been a success. However some very strange issues have cropped up here and there. More on this to come too.


Lotus Quickplace 6.5.1 to Lotus Quickr 8.2
Did my first ever Quickplace to Quickr upgrade. I used the Quickr wiki upgrade page:

http://www-10.lotus.com/ldd/lqwiki.nsf/dx/overview-of-upgrading-from-quickplace-to-quickr-8.2

This wiki was excellent! Except for a broken link that I still cannot access ( it has been down for about two weeks now ) under 'Upgrading places and placetypes' and clicking on 'Upgrading all places and placetypes at once'

http://www-10.lotus.com/ldd/lqwiki.nsf/dx/upgrading-all-places-and-placetypes-at-once-when-completing-the-upgrade-from-quickplace-to-quickr-8.2

I get a

Unexpected runtime error

The runtime has encountered an unexpected error.

Error source

Page Name:/page.xsp

Exception

Error while executing active content filter
Exception in processing active content: Illegal state: 11 (NAME_CHAR)
Illegal state: 11 (NAME_CHAR)


com.ibm.xsp.FacesExceptionEx: Error while executing active content filter     com.ibm.xsp.acf.ACFProcessor._processMarkup(ACFProcessor.java:91)     com.ibm.xsp.acf.ACFProcessor.processMarkup(ACFProcessor.java:77)     com.ibm.xsp.util.FacesUtil.convertValue(FacesUtil.java:1043)     com.ibm.xsp.renderkit.html_basic.ReadOnlyRteRenderer.encodeText(ReadOnlyRteRenderer.java:85)     com.ibm.xsp.renderkit.html_basic.ReadOnlyRteRenderer.encodeValue(ReadOnlyRteRenderer.java:49)     com.ibm.xsp.renderkit.html_basic.ReadOnlyValueRenderer.encodeBegin(ReadOnlyValueRenderer.java:69)     com.ibm.xsp.renderkit.ReadOnlyAdapterRenderer.encodeBegin(ReadOnlyAdapterRenderer.java:116)     com.ibm.xsp.renderkit.ReadOnlyAdapterRenderer.encodeBegin(ReadOnlyAdapterRenderer.java:116)     javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:952)     com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:743)



But I've figured out the command is just:

Force the upgrade of all places and placetypes on the server
load qptool upgrade -a -f

Other than that the upgrade went very smoothly. Had to add a quickplace after the upgrade. To do this start at 'Completing the upgrade from IBM Lotus Quickplace to Lotus Quickr':

http://www-10.lotus.com/ldd/lqwiki.nsf/dx/completing-the-upgrade-from-quickplace-to-quickr


and use the -p placename parameter like so

load qptool unlock -p placename
load qptool upgrade -f -p placename
load qptool register -p placename -install
load qptool upgrade -p placename -f
load qptool unregister -p placename –placecatalog
load qptool register -p placename –placecatalog

Also, the documentation says
load qptool unregister –a –placecatalog
and
load qptool register –a –placecatalog

but that syntax is not correct, you must put the -placecatalog first
load qptool unregister –placecatalog –a
and
load qptool register –placecatalog –a




That is all I have for now.