21.6.05

Powerpoint notes removal add-in

I described earlier a way to add a VBA macro in Powerpoint to allow removing the comments out of PPTs. This required adding the macro each time manually or having the macro in the powerpoint template by default. I decided that I make this small utility more handy by adding this as PPT add-in. This way the macro will be available all the times when dealing with PPTs.

Here is the PPT add-in (HJK_Remove_Notes.ppa), which you need to copy to the Microsoft add-ins directory. In my workstation the target directory is: C:\Documents and Settings\hkaukovu\Application Data\Microsoft\AddIns

After this you should restart the Powerpoint and navigate to Tools -> Add-Ins and press "Add New...". Choose the HJK_Remove_Notes.ppa -file and press Enable Macros button to start the add-in. You should have Plugins -menu item after the "Help" and from there if you choose "Delete Notes" you should be able to delete all the notes from the currently open PPT. The VBA macro will confirm you before you delete the notes.

If you find any issues pls let me know.

Comment on Blojsom installation on OC4J

I wrote in my earlier article about installing Blojsom on OC4J.

There is an easier way for installing applications on OC4J as pointed by Olaf Heimburger in his blog:

http://www.orablogs.com/olaf/archives/001043.html

20.6.05

OC4J: Adding your own logging handler for J2EE application logging

For those that have the need to use their own custom or ready-made logging handlers with Oracle OC4J container, here is a sample how to do it.

Oracle OC4J J2EE logging is based on the J2SE 1.4 java.util.logging. This is the new standard logging utility that has most of the same features log4j has, althought log4j still has more custom logging handlers compared to JUL logging.

You can add your own JUL (java.util.logging) handler as logging handler in the container component (defined in j2ee-logging.xml), but this doesn't affect any of the sub-component loggings, like JMS, server, RMI etc. j2ee-logging.xml affects on custom logging events used in the applications.

One thing to note here is that in order to use e.g. java.util.logging.FileHandler, you must set the "-Djava.util.logging.config.file" -option in the "java -jar oc4j.jar" call to configure the logging options. Setting the properties in the j2ee-logging.xml doesn't have any effect on the java.util.logging handlers.

So in order to run the OC4J with the wanted logging handler you need to startup the container with following command line:
java -Djava.util.logging.config.file=d:\apps\jdev1012\j2ee\home\properties\logging.properties -jar oc4j.jar




Here is a sample j2ee-logging.xml:

<logging_configuration>
<log_handlers>
<log_handler name="oc4j-handler" class="java.util.logging.FileHandler">
</log_handler>
</log_handlers>
<loggers>
<logger name="oracle" level="ALL" useParentHandlers="false">
<handler name="oc4j-handler"/>
</logger>
</loggers>
</logging_configuration>



Here is a sample logging.properties file:

java.util.logging.FileHandler.level=ALL
# "/" the local pathname separator
# "%t" the system temporary directory
# "%h" the value of the "user.home" system property
# "%g" the generation number to distinguish rotated logs
# "%u" a unique number to resolve conflicts
# "%%" translates to a single percent sign "%"
java.util.logging.FileHandler.pattern=%h/central%u.log
java.util.logging.FileHandler.limit=0
java.util.logging.FileHandler.count=1
java.util.logging.FileHandler.append=true
java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter

oracle.emp.kaukovuo.logger.test.LoggerServlet=ALL