Thursday, January 20, 2011

Adding new Ldap attributes to your Websphere Portal 6.1 configuration - the easier way

If you look at the WebSphere Portal 6.1 Infocenter for Adding new Ldap attributes to your Websphere Portal 6.1 configuration it basically gives you several steps and repeat steps to follow to get your new ldap attributes added like running the task which would install the ear file (./ wp-la-install-ear -DWasPassword=password) and running ./ wp-add-property -DWasPassword=password repeatedly to add each attribute. These steps are tedious and requires manual intervention because every it prompts for the password everytime. Also you need to install the ear file just for this task and will never use the app for anything else. Further analysis revealed that all it does it updating the wimxmlextension.xml file, located in the wp_profile_root/config/cells/cellname/wim/model directory and wimconfig.xml file, located in the wp_profile_root/config/cells/cellname/wim/config directory. Hence if you do the same yourself manually you will probably end of saving more time and also can be automated as a part of your install/deploy tasks.

For (eg) to add a new LDAP attribute (
PreferredGivenName) , Just add this below xml section to wimxmlextension.xml ,

<wim:propertySchema nsURI="" dataType="String" multiValued="false" propertyName="PreferredGivenName"> <wim:applicableEntityTypeNames>PersonAccount</wim:applicableEntityTypeNames> </wim:propertySchema>


<config:attributes name="PreferredGivenName" propertyName="PreferredGivenName"> <config:entityTypes>PersonAccount</config:entityTypes> <config:entityTypes>Group</config:entityTypes> </config:attributes>

to wimconfig.xml as mentioned in the above directory location. Repeat
the above for additional new attributes. Except for LA (Lookaside) to need to update the LAPROP table in the db.

Sunday, January 16, 2011

Google Search screwed up my blog index

Back in 2009 I used to write a lot of blog articles until Google came and screwed up by blog index made my blog search traffic to drop by 75% and i probably lost my motivation (why write when no one is reading it ? ). Now it seems they might have fixed something and my blog search traffic has been back to normal levels, my be i will get my motivation back :).

If you look at the above stats , since Oct 2009 I used to get like an average of 150 visitors/day and then it suddenly dropped just like 30 visitors/day. Nothing really happened, same number of blog posts, nothing deleted , no changes in terms of blog settings or nothing. There was no clue why it dropped suddenly which then i followed up with google several time using their webmaster tools for reconsideration of my website to re-index or fix. But never really got anything useful from them except their automated generated message and really got frustrated and gave up,

Google's reply ,

We received a request from a site owner to reconsider how we index the following site:

We've now reviewed your site. When we review a site, we check to see if it's in violation of our Webmaster Guidelines. If we don't find any problems, we'll reconsider our indexing of your site. If your site still doesn't appear in our search results, check our Help Center for steps you can take.

This is an automated message from Webmaster Tools. Please do not reply to this email. For help, please visit

But now some were in Nov 2010 my blog all of a sudden started to see same amount of search traffic that i used to get in Oct. 2009 with no changes ( Gave up posting sine Jan 2010). Hence not sure what really happened except i could think that Google really screwed up and they might have recently fixed it after almost an year. I wish Google doesn't do screw up anymore to anyone as they can really hamper the information sharing and exchange because it really affects one's motivation.

Sunday, January 3, 2010

Tomcat thread pool don't shrink as you expect it to be

Assume if this is your current tomcat's web thread pool configuration,

<executor name="webThreadPool" nameprefix="web-" maxthreads="100" minsparethreads="10"></executor>

Based on the above configuration, 0 threads will be created after the tomcat startup, depending on the number of concurrent requests number of threads will be created in the thread pool, for instance if there are 5 concurrent requests then 5 threads will be created in the pool and these threads are further reused by subsequent requests until more concurrent requests come where further threads will be created. Because of the minSpareThreads value of 10 all the threads created up to 10 will not be discarded irrespective of whether the threads are idle or not. Thread pools shrink based on the maxIdleTime which by default is 60000 ms/ 60 secs / 1 minute meaning if a thread is idle for 60 secs tomcat will discard it from the pool.Suppose there is a spike in the number of concurrent requests say 50 then about 50 threads will be created in the pool to accommodate the spike. if your average is 1 request/sec except during the spike you would expect the threadpool to shrink after the spike, but unfortunately this is not how tomcat does. Tomcat uses the logic in such a way that the threads are picked and used in a round-robin manner from the pool, since you are getting about a average of 1 requests/sec the thread pool won't shrink since all the 50 existing threads in the pool will be used at least once within a minute when there are 1 requests/sec coming. Ideally, I would expect tomcat to reuse the same free/idle thread (Most Recently Used thread) as much as possible instead of the round-robin policy to be able to discard the idle thread. Since it's not working as expected the only way to control is to reduce the maxIdle time with an optimal value, but reducing the maxIdle time also possess some risks. This also becomes an inconvenience if your monitoring system is alerting based on the number of thread pool count, in such cases using activeCount value of the thread pool is a wise thing to avoid false alerts.

<executor name="webThreadPool" nameprefix="web-" maxthreads="400" minsparethreads="10" maxidletime="3000"></executor>

Sunday, September 20, 2009

IBM WebSphere Commerce Websites Gallery

Here are some of the shopping websites created using IBM WebSphere Commerce Suite. You can find all sorts of top brand companies ranging from Electronics retailers, Garments retailers, government, etc.Also you can search "/wcs/stores" keyword search in google to list all the websites developed using IBM Commerce Suite, provided they haven't changed the default context root.

Saturday, September 19, 2009

Tips to get most out of IBM Support

I am sure many of you might already worked with IBM support to resolve problems related to the product , but here are some tips that you can follow to effectively reduce the problem resolution time and ease the process.

1) If you suspect if the problem is product related, start by opening a service request or PMR (Problem Management Record) either through online or by calling the IBM Support 1-800-IBM-SERV. You might need a IBM customer number.

2) Start with a simple description of the problem when you open a PMR.

3) Make sure you provide a clear description in such a way it represents the problem area so that your PMR gets assigned to the right team as there are several teams with different specialization within the same product , so that you will save time by getting the problem assigned to the correct team. If you know the team before hand then specify the team queue in the PMR.

4) Specify mode of communication in the PMR either by email or phone. If you think the problem is complex and need some explanation to do, then specify phone call back so that IBM support representative can call back and understand the problem, if you think the problem something trivial a little description in the PMR would make them understand then specify email.

5) Collect MustGather documents either manually or using IBM Support Assistant tool and then attach the the logs to PMR which will help in faster resolution to the PMR.

6) If possible, try to create a reproducible test case preferably outside to your custom application, so that IBM can use this test case to test it in the lab and provide a solution, Also it will also help to isolate that the problem is not related to your company's custom code or the environment.

7) Please use commonly used terminologies when updating the PMR or talking to IBM Support representative instead of the terminologies that you might use within your IT department as it might confuse the person handling the PMR as different companies use different ways to describe a problem. Clarify things if and when needed.

8) Specify the severity and priority in the PMR, Be reasonable and provide a business justification, set your expectations like when you need the next update and when the problem should be resolved, so that they can work towards it.

9) Please update the PMR with any new findings and updates as and when you come to know or also when you need progress updates from IBM.

10) Understand the escalation procedure and use it to escalate when things are not moving as reasonably expected.

11) Be friendly and appreciate the IBM Support representative work when problem gets resolved.

12) Follow the instructions from IBM even though it doesn't make sense sometimes , otherwise it would become a bottleneck to proceed to the next step in debugging the problem.

13) Besides doing all the above you can also self serve simultaneously by searching support knowledge base, infocenter , forums , etc, as there might be problems with an already known resolution.

Thursday, September 17, 2009

Poll: On what OS your WebSphere AppServer is installed ?

Poll results for : On what OS your WebSphere AppServer is installed ? , held between Aug 16th 2009 to Sep 16th 2009 and voted my about 86 voters.

Google Chart

You can still continue to vote though:

Poll: On what OS your WebSphere AppServer is installed ?

Tuesday, September 8, 2009

IBM WebSphere related twitters

Here are some of the IBM WebSphere related twitters having interesting tweets on various topics related to IBM WebSphere Product Family.

IBM_WAS IBM WAS SupportIBM WebSphere Application Server support news, updates, and information.
IBM_Commerce IBM Commerce SupportIBM WebSphere Commerce support news, updates, and information.
IBM_WPS IBM WPS SupportIBM WebSphere Process Server support news, updates, and information.
IBM_Monitor IBM Monitor SupportIBM WebSphere Business Monitor Support page.
IBM_Modeler IBM Modeler SupportIBM WebSphere Business Modeler support.
WebSphereBUZZ WebSphere Buzz News.
WebSpherePortal WebSphere PortalYour location for interesting links associated with IBM WebSphere Portal.
WebSphereHelp WebSphere Help, Tips & Tricks.