You are on page 1of 10

To determine the patch level of your Application Engine, do the following: 1.

On the Workplace Sign In page, select View from the browsers menus 2. Select View Source 3. Look for a meta tag similar to: <meta name=BuildName content=per165.030.a05> Record the content value and compare it to the patch dependency matrix. P8 Content Engine To determine the patch level of your Content Engine, do the following: 1. Navigate to the directory: <install location>\FileNet\Content Engine 2. Right click on the FNK_Catalog.dll file 3. Select Properties 4. Switch to the Version tab 5. Under Other version information find the Comments item Record the build value and compare it to the patch dependency matrix. P8 Process Engine To determine the patch level of your Process Engine, do the following: Run the following command from /fnsw/bin prompt: 1. java -cp pe.jar filenet.vw.toolkit.utils.VWBuildStamp x

Soap vs rest:http://spf13.com/post/soap-vs-rest

How to switch Case Analyzer to point to another Content Engine/Process Engine? 06JUN
If you have multiple Content Engines/Process Engines but only one Case Analyzer and want it to point to a specific Content Engine/Process Engine at some point, here are steps that could archive that goal 1. Follow these steps to reinitialize Case Analyzer database 2. Make sure Case Analyzer is stopped. If not STOP it. 3. Clean up shared folder. You should be able to find it from PTM -> General tab -> Temp Directory (UNC) 4. Update Content Engine URI, Service Username and Service Password under General Tab 5. Update Process Engine database information under Process Engine Tab -> Process Engine Database 6. Refresh event logs in Event Logs tab

7. Restart Process Task Manager 8. Start Case Analyzer 9. Observe the published event in Status Tab. Process Cubes There are several OOTB report which come along with Case Analyzer Client. They can be used to verify result. I was able to proceed this successfully. Good luck.
Leave a comment
Posted by ringocs on June 6, 2012 in FileNet

How to reinitialize FileNet Process Analyzer/Case Analyzer database? 06JUN


I had run into the situation that the Process Analyzer or Case Analyzer could not synchronize Process Engine events properly. So I had to reset Case Analyzer database. Here is very simple step to archive that on Case Analyzer (FileNet 5.1) 1. 2. 3. 4. 5. 6. Stop Case Analyzer Stop Process Task Manager on Case Analyzer environment Go to Case Analyzer Engine folder which is Case Analyzer installation folder Go to jpa folder Execute SetupDB script Done. It will drop existing database and recreate properly

1 Comment
Posted by ringocs on June 6, 2012 in FileNet

Setting custom logger for Component Managers 20OCT


1. Add this parameter in JRE parameters: - Dlog4j.configuration=file:/C:/log4j.xml 2. Logger level configuration sample:

How to switch Case Analyzer to point to another Content Engine/Process Engine?


If you have multiple Content Engines/Process Engines but only one Case Analyzer and want it to point to a specific Content Engine/Process Engine at some point, here are steps that could archive that goal 1. Follow these steps to reinitialize Case Analyzer database 2. Make sure Case Analyzer is stopped. If not STOP it. 3. Clean up shared folder. You should be able to find it from PTM -> General tab -> Temp Directory (UNC) 4. Update Content Engine URI, Service Username and Service Password under General Tab 5. Update Process Engine database information under Process Engine Tab -> Process Engine Database 6. Refresh event logs in Event Logs tab 7. Restart Process Task Manager 8. Start Case Analyzer 9. Observe the published event in Status Tab. Process Cubes There are several OOTB report which come along with Case Analyzer Client. They can be used to verify result. I was able to proceed this successfully. Good luck.

VisualJVM and WebSphere 25APR


1) On the admin console (Click on Servers->Server types->WebSphere application servers->server1>Process definition->Java Virtual Machine), add the following line into the field of Generic JVM Argument (note that the first system property is equal to nothing and no equal sign for the second system property):
-Djavax.management.builder.initial= -Dcom.sun.management.jmxremote

2) Add or uncomment the following three lines in file /opt/IBM/ WebSphere/AppServer/java/jre/lib/management/management.properties (or / lib/management/management.properties):
com.sun.management.jmxremote.port=3333 com.sun.management.jmxremote.authenticate=false com.sun.management.jmxremote.ssl=false com.sun.management.jmxremote.local.only=false

3) Connect to JMX

File -> Add JMX Connection URL: <IP>:<JMX Remote Port>

Leave a comment
Posted by ringocs on April 25, 2013 in WebSphere

How to setup messaging with Gmail SMTP 25FEB


This post is generated from IBM website

Question
How do I setup and use the Gmail SMTP server for WebSphere Commerce outbound e-mail messaging?

Cause
In general, the configuration depends on the SMTP server and as per the documentation of Configuration of transport services used for a message for the E-mail adapter, where: Host: Specify the fully qualified hostname or IP address of the SMTP server used to send the message. Port: The SMTP port used to send the message. (In most systems this is 25)

Furthermore, initially after setting messaging with Gmail SMTP, you might receive SSL HANDSHAKE FAILURE errors resembling the following snippet:

[8/13/10 14:00:54:583 EDT] 00000032 WSX509TrustMa E CWPKI0022E: SSL HANDSHAKE FAILURE: A signer with SubjectDN CN=smtp.gmail.com, O=Google Inc, L=Mountain View, ST=California, C=US was sent from target host:port null:null. The signer may need to be added to local trust store C:/IBM/WebSphere/AppServer/profiles/demo/config/cells/WC_demo_cell/nodes/WC_d emo_node/trust.p12 located in SSL configuration alias NodeDefaultSSLSettings loaded from SSL configuration file security.xml. The extended error message from the SSL handshake exception is: PKIX path building failed: java.security.cert.CertPathBuilderException: PKIXCertPathBuilderImpl could not build a valid CertPath.; internal cause is: java.security.cert.CertPathValidatorException: The certificate issued by OU=Equifax Secure Certificate Authority, O=Equifax, C=US is not trusted; internal cause is: java.security.cert.CertPathValidatorException: Certificate chaining error.

Answer
Using the WebSphere Commerce Administration console, you can setup the e-mail messaging Transport to use the following configuration settings for the SMTP server as per Gmail documentation: Host: smtp.gmail.com Port: 465 to use TCP (SSL) In case of SSL HANDSHAKE FAILURE, use the WebSphere Application Server Administration console to resolve the CWPKI0022E error and SSL HANDSHAKE FAILURE from the following location: Security > SSL certificate and key management > Key stores and certificates > NodeDefaultTrustStore > Signer certificates > Retrieve from Port Enter the Host and Port of the Gmail SMTP server. The wizard registers the certificate for you.

2 Comments
Posted by ringocs on February 25, 2011 in Java, WebSphere

Configure remote debug for Websphere 09JUL


Login to Websphere Integrated Solutions Console Navigate to Application servers > server1 > Debugging Service, then enable check box Enable service at server startup. The default port for debug is 7777 (change if need), click OK, Save, lastly restart Websphere.

In Eclipse, Menu Run > Debug Configuration, specify Host is IP of virtual machine, Port is the debug port. (port = 7777 if we dont not specify new port in previous step) In tab Souce, configure location of Source Launch this debug configuration to debug. If debug cannot be launched, try to change port (both in Websphere Integrated Solutions Console and Eclipse)

Monthly Archives: October 2010

Setting custom logger for Component Managers 20OCT


1. Add this parameter in JRE parameters: - Dlog4j.configuration=file:/C:/log4j.xml 2. Logger level configuration sample:

1 Comment
Posted by ringocs on October 20, 2010 in FileNet

Timezone Conversion
11OCT
How to display time in different timezones is a HOT question. The following post which I have found on the Internet can give the correct answer. Convert the local time to another time zone with this JavaScript

<script language=JavaScript> // function to calculate local time // in a different city // given the citys UTC offset function calcTime(city, offset) { // create Date object for current location d = new Date(); // convert to msec // add local time zone offset // get UTC time in msec utc = d.getTime() + (d.getTimezoneOffset() * 60000); // create new Date object for different city // using supplied offset nd = new Date(utc + (3600000*offset)); // return time as a string return The local time in + city + is + nd.toLocaleString(); } // get Bombay time alert(calcTime(Bombay, +5.5)); // get Singapore time alert(calcTime(Singapore, +8)); // get London time alert(calcTime(London, +1)); </script> Check time in different timezones: 1. The World Clock 2. What Time Is It Around The World Right Now? 3. Check out current time and date in UTC How to know which timezone you are: <script type=text/javascript> var d = new Date() var gmtHours = -d.getTimezoneOffset()/60; document.write(The local time zone is: GMT + gmtHours); </script> Here is the post which tries to work out with Daylight Saving Time: Auto detect a time zone with JavaScript Some Java examples: 1. Converting Times Between Time Zones // Given a local time of 10am, get the time in Japan // Create a Calendar object with the local time zone Calendar local = new GregorianCalendar();

local.set(Calendar.HOUR_OF_DAY, 10); // 0..23 local.set(Calendar.MINUTE, 0); local.set(Calendar.SECOND, 0); // Create an instance using Japans time zone and set it with the local UTC Calendar japanCal = new GregorianCalendar(TimeZone.getTimeZone(Japan)); japanCal.setTimeInMillis(local.getTimeInMillis()); // Get the foreign time int hour = japanCal.get(Calendar.HOUR); // 3 int minutes = japanCal.get(Calendar.MINUTE); // 0 int seconds = japanCal.get(Calendar.SECOND); // 0 boolean am = japanCal.get(Calendar.AM_PM) == Calendar.AM; //true // Given a time of 10am in Japan, get the local time japanCal = new GregorianCalendar(TimeZone.getTimeZone(Japan)); japanCal.set(Calendar.HOUR_OF_DAY, 10); // 0..23 japanCal.set(Calendar.MINUTE, 0); japanCal.set(Calendar.SECOND, 0); // Create a Calendar object with the local time zone and set // the UTC from japanCal local = new GregorianCalendar(); local.setTimeInMillis(japanCal.getTimeInMillis()); // Get the time in the local time zone hour = local.get(Calendar.HOUR); // 5 minutes = local.get(Calendar.MINUTE); // 0 seconds = local.get(Calendar.SECOND); // 0 am = local.get(Calendar.AM_PM) == Calendar.AM; // false 2. Getting the Current Time in Another Time Zone // Get the current time in Hong Kong Calendar cal = new GregorianCalendar(TimeZone.getTimeZone(Hongkong)); int hour12 = cal.get(Calendar.HOUR); // 0..11 int minutes = cal.get(Calendar.MINUTE); // 0..59 int seconds = cal.get(Calendar.SECOND); // 0..59 boolean am = cal.get(Calendar.AM_PM) == Calendar.AM; // Get the current hour-of-day at GMT cal.setTimeZone(TimeZone.getTimeZone(GMT)); int hour24 = cal.get(Calendar.HOUR_OF_DAY); // 0..23 // Get the current local hour-of-day cal.setTimeZone(TimeZone.getDefault()); hour24 = cal.get(Calendar.HOUR_OF_DAY); // 0..23 3. How do I convert time between timezone?
01.package org.kodejava.example.util; 02. 03.import java.util.Calendar; 04.import java.util.GregorianCalendar; 05.import java.util.TimeZone;

06. 07.public class TimeZoneExample { 08. public static void main(String[] args) { 09. // 10. // Create a calendar object and set it time based on the local 11. // time zone 12. // 13. Calendar localTime = Calendar.getInstance(); 14. localTime.set(Calendar.HOUR, 17); 15. localTime.set(Calendar.MINUTE, 15); 16. localTime.set(Calendar.SECOND, 20); 17. 18. int hour = localTime.get(Calendar.HOUR); 19. int minute = localTime.get(Calendar.MINUTE); 20. int second = localTime.get(Calendar.SECOND); 21. 22. // 23. // Print the local time 24. // 25. System.out.printf("Local time 26. 27. // 28. // Create a calendar object for representing a Germany time zone. Then we 29. // wet the time of the calendar with the value of the local time 30. // 31. Calendar germanyTime = new GregorianCalendar(TimeZone.getTimeZone("Germany")); 32. germanyTime.setTimeInMillis(localTime.getTimeInMillis()); 33. hour = germanyTime.get(Calendar.HOUR); : %02d:%02d:%02d\n", hour, minute, second);

34. minute = germanyTime.get(Calendar.MINUTE); 35. second = germanyTime.get(Calendar.SECOND); 36. 37. // 38. // Print the local time in Germany time zone 39. // 40. System.out.printf("Germany time: %02d:%02d:%02d\n", hour, minute, second); 41. } 42.}

How to reinitialize FileNet Process Analyzer/Case Analyzer database?


I had run into the situation that the Process Analyzer or Case Analyzer could not synchronize Process Engine events properly. So I had to reset Case Analyzer database. Here is very simple step to archive that on Case Analyzer (FileNet 5.1) 1. 2. 3. 4. 5. 6. Stop Case Analyzer Stop Process Task Manager on Case Analyzer environment Go to Case Analyzer Engine folder which is Case Analyzer installation folder Go to jpa folder Execute SetupDB script Done. It will drop existing database and recreate properly

SSO http://www.p8software.com/wp-content/plugins/downloadsmanager/upload/Single%20Sign%20On.pdf