<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Mersoft Corporation Blog &#187; Information Technology</title>
	<atom:link href="http://blog.mersoft.com/category/information-technology/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.mersoft.com</link>
	<description>Achieve, Compete, and Evolve</description>
	<lastBuildDate>Tue, 25 May 2010 15:37:24 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>How to Configure Axis 1.4 WS Client (Java) to accept GZIP compressed SOAP messages.</title>
		<link>http://blog.mersoft.com/2009/08/27/how-to-configure-axis-1-4-ws-client-java-to-accept-gzip-compressed-soap-messages/</link>
		<comments>http://blog.mersoft.com/2009/08/27/how-to-configure-axis-1-4-ws-client-java-to-accept-gzip-compressed-soap-messages/#comments</comments>
		<pubDate>Thu, 27 Aug 2009 18:32:14 +0000</pubDate>
		<dc:creator>Peter Tarlos</dc:creator>
				<category><![CDATA[Information Technology]]></category>
		<category><![CDATA[Java/Java Frameworks]]></category>
		<category><![CDATA[1.4]]></category>
		<category><![CDATA[1.x]]></category>
		<category><![CDATA[axis]]></category>
		<category><![CDATA[client-config.wsdd]]></category>
		<category><![CDATA[compression]]></category>
		<category><![CDATA[gzip]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[soap]]></category>
		<category><![CDATA[web service]]></category>

		<guid isPermaLink="false">http://blog.mersoft.com/?p=281</guid>
		<description><![CDATA[In this blog I will explain how to write an Axis 1.4 Client that can accept GZIP compressed SOAP messages.  The GZIP compression feature of Axis 1.x is not well documented on the Apache website, so you have to search for it in blogs like this one.  You can also use Axis 1.x [...]]]></description>
			<content:encoded><![CDATA[<p>In this blog I will explain how to write an Axis 1.4 Client that can accept GZIP compressed SOAP messages.  The GZIP compression feature of Axis 1.x is not well documented on the Apache website, so you have to search for it in blogs like this one.  You can also use Axis 1.x to write server side code to  compress SOAP messages, but I will not cover that in this blog.</p>
<p>Steps to write Axis 1.4 Client code:</p>
<ol>
<li> Create the Axis Client code: Run wsdl2java on your wsdl to generate the client side stubs.  Write code to connect to the correct web service endpoint.  You can find examples on the Axis website and numerous blogs.</li>
<li>Use a TCP/IP monitoring software so that you can see the request and response messages.  If you&#8217;re using Eclipse, there&#8217;s already a built-in “TCP/IP Monitor”.  The monitor will tunnel a TCP connection from a local port to the web service endpoint.  Set the Monitor Type to TCP/IP and not HTTP.</li>
<li>Test that you can get to the web service using the TCP/IP monitor. (Compression in not enabled at this point)</li>
<li>Add an HTTP Header to the request to inform the server that the client accepts GZIP compression.  (HTTP Header is not to be confused with the SOAP Header).</li>
<div style="text-align:left;color:#000000;background-color:#ffffff;border:solid black 1px;padding:0.5em 1em 0.5em 1em;overflow:auto;font-size:medium;font-family:monospace">URL url = new URL(&#8221;www.acme.corp/webservice/MyService&#8221;);<br />
AcmeServiceLocator service = new AcmeServiceLocator();<br />
AcmeServicePortType port = service.getacmeServiceHttpPort(url);<br />
<strong>((Stub) port)._setProperty(HTTPConstants.MC_ACCEPT_GZIP,Boolean.TRUE);</strong><br />
QueryResult result = port.queryMyStore(param);</div>
<li>Change the Axis Client configuration file to use &#8220;CommonsHTTPSender&#8221; instead of the default &#8220;HTTPSender&#8221; as the http transport.  This transport knows how to deal with GZIP compression, the default one does not. The Axis configuration file can be found in the Axis.jar (client-config.wsdd).  This file needs to be modified to use &#8220;CommonsHTTPSender&#8221;, see below. (I tested this configuration with Axis 1.4; older versions might have a slightly different configuration)  The updated client-config.wsdd file needs to be put on the Classpath.</li>
<div style="text-align:left;color:#000000;background-color:#ffffff;border:solid black 1px;padding:0.5em 1em 0.5em 1em;overflow:auto;font-size:medium;font-family:monospace">&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;UTF-8&#8243;?&gt;<br />
&lt;deployment name=&#8221;defaultClientConfig&#8221;<br />
xmlns=&#8221;http://xml.apache.org/axis/wsdd/&#8221;<br />
xmlns:java=&#8221;http://xml.apache.org/axis/wsdd/providers/java&#8221;&gt;<br />
&lt;globalConfiguration&gt;<br />
&lt;parameter name=&#8221;disablePrettyXML&#8221; value=&#8221;true&#8221;/&gt;<br />
&lt;parameter name=&#8221;enableNamespacePrefixOptimization&#8221; value=&#8221;false&#8221;/&gt;<br />
&lt;/globalConfiguration&gt;<br />
<strong>&lt;transport name=&#8221;http&#8221; pivot=&#8221;java:org.apache.axis.transport.http.CommonsHTTPSender&#8221;/&gt;</strong><br />
<del>&lt;transport name=&#8221;http&#8221; pivot=&#8221;java:org.apache.axis.transport.http.HTTPSender&#8221;/&gt;</del><br />
&lt;transport name=&#8221;local&#8221; pivot=&#8221;java:org.apache.axis.transport.local.LocalSender&#8221;/&gt;<br />
&lt;transport name=&#8221;java&#8221; pivot=&#8221;java:org.apache.axis.transport.java.JavaSender&#8221;/&gt;<br />
&lt;/deployment&gt;</div>
<li>Now run your code!  In the TCP/IP monitor you should see the HTTP Header “Accept-Encoding: gzip” in the request.  In the response you should see the HTTP Header “Content-encoding: gzip” and some binary data on the bottom.  This is the server telling the client that it is sending back GZIP-ed data.</li>
<div style="text-align:left;color:#000000;background-color:#ffffff;border:solid black 1px;padding:0.5em 1em 0.5em 1em;overflow:auto;font-size:medium;font-family:monospace"><strong>*** Request Message ***</strong><br />
POST /webservice/MyService HTTP/1.1<br />
Content-Type: text/xml; charset=utf-8<br />
SOAPAction: &#8220;&#8221;<br />
User-Agent: Axis/1.4<br />
<strong>Accept-Encoding: gzip</strong><br />
Host: localhost:9001<br />
Transfer-Encoding: chunked<br />
28a<br />
&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;UTF-8&#8243;?&gt;&lt;soapenv:Envelope &#8230;</p>
<p><strong>*** Response Message ***</strong><br />
Server: Sun-ONE-Web-Server/6.1<br />
Date: Thu, 27 Aug 2009 15:42:25 GMT<br />
Content-type: text/xml;charset=UTF-8<br />
X-powered-by: Servlet 2.4; JBoss-4.0.5.GA Tomcat-5.5<br />
<strong>Content-encoding: gzip</strong><br />
Vary: Accept-Encoding<br />
Transfer-encoding: chunked<br />
479</div>
</ol>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fblog.mersoft.com%2F2009%2F08%2F27%2Fhow-to-configure-axis-1-4-ws-client-java-to-accept-gzip-compressed-soap-messages%2F&amp;linkname=How%20to%20Configure%20Axis%201.4%20WS%20Client%20%28Java%29%20to%20accept%20GZIP%20compressed%20SOAP%20messages."><img src="http://blog.mersoft.com/wp-content/plugins/add-to-any/share_save_171_16.gif" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://blog.mersoft.com/2009/08/27/how-to-configure-axis-1-4-ws-client-java-to-accept-gzip-compressed-soap-messages/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Do What You Do Best. Let Someone Else Do The Rest.</title>
		<link>http://blog.mersoft.com/2008/11/03/do-what-you-do-best-let-someone-else-do-the-rest/</link>
		<comments>http://blog.mersoft.com/2008/11/03/do-what-you-do-best-let-someone-else-do-the-rest/#comments</comments>
		<pubDate>Mon, 03 Nov 2008 16:53:14 +0000</pubDate>
		<dc:creator>Carolyn Wood</dc:creator>
				<category><![CDATA[Information Technology]]></category>

		<guid isPermaLink="false">http://blog.mersoft.com/?p=74</guid>
		<description><![CDATA[Applying Maslow’s hierarchy of needs to your IT decisions, you will find that your operations and infrastructure comprise the lowest level. Your absolute “musts” include a reliable Internet connection, email, security, backup, and disaster recovery. These elements are fundamental, and you cannot succeed and grow without them.  Small companies need these critical areas to function [...]]]></description>
			<content:encoded><![CDATA[<p>Applying Maslow’s hierarchy of needs to your IT decisions, you will find that your operations and infrastructure comprise the lowest level. Your absolute “musts” include a reliable Internet connection, email, security, backup, and disaster recovery. These elements are fundamental, and you cannot succeed and grow without them.  Small companies need these critical areas to function just as well as their counterparts in Fortune 500 companies do.  Your firewall needs to be just as secure as theirs, your privacy standards just as tight, and your understanding of legal issues just as strong.</p>
<p>With these fundamentals in place, you must then determine which core business functions your company needs to own and fully manage, and which procedures can be outsourced.  If you produce widgets, for example, you need to own the widget producing system, but it may make good sense to outsource your billing to a company that specializes in that and has the appropriate systems already in place.  Similarly, if you need custom software, it makes good sense to find a <a href="http://www.mersoft.com" target="_blank">software development company</a> that understands your needs and goals and can work with you to develop appropriate software and hardware solutions, rather than trying to adapt a one-size-fits-all off-the-shelf program.  A good software design company will embrace your business vision and create the tools you need to achieve your goals.</p>
<p>Finally, be sure to keep your finger on the pulse of new IT developments that are applicable to your industry. IT groups and industry organizations can be excellent sources of information, as can user groups for the business systems you are using. Keeping current with what others in your field are doing in terms of IT helps as well.  Your goal is always to think strategically and to stay at least a little ahead of where your company is right now technologically.</p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fblog.mersoft.com%2F2008%2F11%2F03%2Fdo-what-you-do-best-let-someone-else-do-the-rest%2F&amp;linkname=Do%20What%20You%20Do%20Best.%20Let%20Someone%20Else%20Do%20The%20Rest."><img src="http://blog.mersoft.com/wp-content/plugins/add-to-any/share_save_171_16.gif" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://blog.mersoft.com/2008/11/03/do-what-you-do-best-let-someone-else-do-the-rest/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Problems with duplicate or multiple log messages using log4j xml</title>
		<link>http://blog.mersoft.com/2008/11/03/problems-with-duplicate-or-multiple-log-messages-using-log4j-xml/</link>
		<comments>http://blog.mersoft.com/2008/11/03/problems-with-duplicate-or-multiple-log-messages-using-log4j-xml/#comments</comments>
		<pubDate>Mon, 03 Nov 2008 17:15:05 +0000</pubDate>
		<dc:creator>Peter Tarlos</dc:creator>
				<category><![CDATA[Information Technology]]></category>
		<category><![CDATA[Java/Java Frameworks]]></category>
		<category><![CDATA[additive]]></category>
		<category><![CDATA[additivity]]></category>
		<category><![CDATA[appender]]></category>
		<category><![CDATA[configuration]]></category>
		<category><![CDATA[duplicate]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[log]]></category>
		<category><![CDATA[log4j]]></category>
		<category><![CDATA[log4j.xml]]></category>
		<category><![CDATA[logger]]></category>
		<category><![CDATA[multiple]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://blog.mersoft.com/?p=84</guid>
		<description><![CDATA[Are you seeing duplicate or multiple log messages using log4j xml configuration?
The configuration below produces three log messages.
log4j.xml:
&#60;?xml version=&#34;1.0&#34; encoding=&#34;UTF-8&#34; ?&#62;
&#60;!DOCTYPE log4j:configuration SYSTEM &#34;log4j.dtd&#34;&#62;
&#60;log4j:configuration xmlns:log4j=&#34;http://jakarta.apache.org/log4j/&#34;&#62;
&#160;&#160;&#60;appender name=&#34;console&#34; class=&#34;org.apache.log4j.ConsoleAppender&#34;&#62;
&#160;&#160;&#160;&#160;&#60;param name=&#34;Target&#34; value=&#34;System.out&#34; /&#62;
&#160;&#160;&#160;&#160;&#60;layout class=&#34;org.apache.log4j.PatternLayout&#34;&#62;
&#160;&#160;&#160;&#160;&#160;&#160;&#60;param name=&#34;ConversionPattern&#34; value=&#34;%-5p %c{1} &#8211; %m%n&#34; /&#62;
&#160;&#160;&#160;&#160;&#60;/layout&#62;
&#160;&#160;&#60;/appender&#62;
&#160;&#160;&#60;logger name=&#34;com.acme.LoggingTest&#34;&#62;
&#160;&#160;&#160;&#160;&#60;level value=&#34;debug&#34; /&#62;
&#160;&#160;&#160;&#160;&#60;appender-ref ref=&#34;console&#34; /&#62;
&#160;&#160;&#60;/logger&#62;
&#160;&#160;&#60;logger name=&#34;com.acme&#34;&#62;
&#160;&#160;&#160;&#160;&#60;level value=&#34;debug&#34; /&#62;
&#160;&#160;&#160;&#160;&#60;appender-ref ref=&#34;console&#34; /&#62;
&#160;&#160;&#60;/logger&#62;
&#160;&#160;&#60;root&#62;
&#160;&#160;&#160;&#160;&#60;priority value=&#34;debug&#34; /&#62;
&#160;&#160;&#160;&#160;&#60;appender-ref ref=&#34;console&#34; /&#62;
&#160;&#160;&#60;/root&#62;
&#60;/log4j:configuration&#62;

LoggingTest.java:

package com.acme;
public class LoggingTest {
&#160;&#160;
&#160;&#160;private [...]]]></description>
			<content:encoded><![CDATA[<p>Are you seeing duplicate or multiple log messages using log4j xml configuration?<br />
The configuration below produces three log messages.</p>
<p><code>log4j.xml:</code></p>
<div style="text-align:left;color:#000000; background-color:#ffffff; border:solid black 1px; padding:0.5em 1em 0.5em 1em; overflow:auto;font-size:medium; font-family:monospace; "><span style="color:#236e25;">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;</span><br />
<span style="color:#236e25;">&lt;!DOCTYPE log4j:configuration SYSTEM &quot;log4j.dtd&quot;&gt;</span><br />
<span style="color:#881280;">&lt;log4j:configuration xmlns:</span><span style="color:#994500;">log4j</span><span style="color:#881280;">=</span><span style="color:#1a1aa6;">&quot;http://jakarta.apache.org/log4j/&quot;</span><span style="color:#881280;">&gt;</span><br />
&nbsp;&nbsp;<span style="color:#881280;">&lt;appender </span><span style="color:#994500;">name</span><span style="color:#881280;">=</span><span style="color:#1a1aa6;">&quot;console&quot;</span><span style="color:#881280;"> </span><span style="color:#994500;">class</span><span style="color:#881280;">=</span><span style="color:#1a1aa6;">&quot;org.apache.log4j.ConsoleAppender&quot;</span><span style="color:#881280;">&gt;</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#881280;">&lt;param </span><span style="color:#994500;">name</span><span style="color:#881280;">=</span><span style="color:#1a1aa6;">&quot;Target&quot;</span><span style="color:#881280;"> </span><span style="color:#994500;">value</span><span style="color:#881280;">=</span><span style="color:#1a1aa6;">&quot;System.out&quot;</span><span style="color:#881280;"> /&gt;</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#881280;">&lt;layout </span><span style="color:#994500;">class</span><span style="color:#881280;">=</span><span style="color:#1a1aa6;">&quot;org.apache.log4j.PatternLayout&quot;</span><span style="color:#881280;">&gt;</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#881280;">&lt;param </span><span style="color:#994500;">name</span><span style="color:#881280;">=</span><span style="color:#1a1aa6;">&quot;ConversionPattern&quot;</span><span style="color:#881280;"> </span><span style="color:#994500;">value</span><span style="color:#881280;">=</span><span style="color:#1a1aa6;">&quot;%-5p %c{1} &#8211; %m%n&quot;</span><span style="color:#881280;"> /&gt;</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#881280;">&lt;/layout&gt;</span><br />
&nbsp;&nbsp;<span style="color:#881280;">&lt;/appender&gt;</span><br />
&nbsp;&nbsp;<span style="color:#881280;">&lt;logger </span><span style="color:#994500;">name</span><span style="color:#881280;">=</span><span style="color:#1a1aa6;">&quot;com.acme.LoggingTest&quot;</span><span style="color:#881280;">&gt;</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#881280;">&lt;level </span><span style="color:#994500;">value</span><span style="color:#881280;">=</span><span style="color:#1a1aa6;">&quot;debug&quot;</span><span style="color:#881280;"> /&gt;</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#881280;">&lt;appender-ref </span><span style="color:#994500;">ref</span><span style="color:#881280;">=</span><span style="color:#1a1aa6;">&quot;console&quot;</span><span style="color:#881280;"> /&gt;</span><br />
&nbsp;&nbsp;<span style="color:#881280;">&lt;/logger&gt;</span><br />
&nbsp;&nbsp;<span style="color:#881280;">&lt;logger </span><span style="color:#994500;">name</span><span style="color:#881280;">=</span><span style="color:#1a1aa6;">&quot;com.acme&quot;</span><span style="color:#881280;">&gt;</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#881280;">&lt;level </span><span style="color:#994500;">value</span><span style="color:#881280;">=</span><span style="color:#1a1aa6;">&quot;debug&quot;</span><span style="color:#881280;"> /&gt;</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#881280;">&lt;appender-ref </span><span style="color:#994500;">ref</span><span style="color:#881280;">=</span><span style="color:#1a1aa6;">&quot;console&quot;</span><span style="color:#881280;"> /&gt;</span><br />
&nbsp;&nbsp;<span style="color:#881280;">&lt;/logger&gt;</span><br />
&nbsp;&nbsp;<span style="color:#881280;">&lt;root&gt;</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#881280;">&lt;priority </span><span style="color:#994500;">value</span><span style="color:#881280;">=</span><span style="color:#1a1aa6;">&quot;debug&quot;</span><span style="color:#881280;"> /&gt;</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#881280;">&lt;appender-ref </span><span style="color:#994500;">ref</span><span style="color:#881280;">=</span><span style="color:#1a1aa6;">&quot;console&quot;</span><span style="color:#881280;"> /&gt;</span><br />
&nbsp;&nbsp;<span style="color:#881280;">&lt;/root&gt;</span><br />
<span style="color:#881280;">&lt;/log4j:configuration&gt;</span>
</div>
<p><code>LoggingTest.java:</code></p>
<div style="text-align:left;color:#000000; background-color:#ffffff; border:solid black 1px; padding:0.5em 1em 0.5em 1em; overflow:auto; font-size:medium; font-family:monospace; ">
<span style="color:#881350;">package</span> com.acme<span style="color:#683821;">;</span><br />
<span style="font-size:medium; color:#881350;">public</span> <span style="color:#881350;">class</span> LoggingTest {<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;<span style="color:#881350;">private</span> Logger log = Logger.<span style="color:#003369;">getLogger</span>(this.<span style="color:#003369;">getClass</span>());</p>
<p>&nbsp;&nbsp;<span style="color:#881350;font-size:medium;">public</span> <span style="color:#881350;">static</span> <span style="color:#881350;">void</span> <span style="color:#003369;">main</span>(<span style="color:#440088;">String</span>[] args) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#236e25;">// initialize log4j<br />
</span>&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#440088;">URL</span> propsUrl = Loader.<span style="color:#003369;">getResource</span>(<span style="color:#760f15;">&quot;log4j.xml&quot;</span>);<br />
&nbsp;&nbsp;&nbsp;&nbsp;DOMConfigurator.<span style="color:#003369;">configure</span>(propsUrl);<br />
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#881350;">new</span> <span style="color:#003369;">LoggingTest</span>();<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;<span style="color:#881350;">public</span> <span style="color:#003369;">LoggingTest</span>(){<br />
&nbsp;&nbsp;&nbsp;&nbsp;log.<span style="color:#003369;">debug</span>(<span style="color:#760f15;">&quot;Hello World&quot;</span>);<br />
&nbsp;&nbsp;}<br />
}</div>
<p>The reason for the multiple log messages is that the three loggers (&#8221;com.acme.LoggingTest&#8221;, &#8220;com.acme&#8221; and &#8220;root&#8221;) are configured to use the same &#8220;console&#8221; appender.  The &#8220;com.acme.LoggingTest&#8221; logger logs the first message to its appender and then traverses through its ancestors and logs to their appenders as well.  This behavior is called appender additivity and it is set to &#8220;true&#8221; by default on all loggers including the &#8220;root&#8221; logger.</p>
<blockquote><p>Logger Hiearchy:<br />
- root<br />
- com.acme<br />
- com.acme.LoggingTest</p></blockquote>
<p>The appender additivity can be turned off by specifying additivity=&#8221;false&#8221; on a logger.  This causes the logger to only log to its appender but not to the appenders of its ancestors.  Setting the additivity=&#8221;false&#8221; on all the loggers solves the multiple logging problem.  The modified configuration below only outputs a single log message.</p>
<p>Fixed <code>log4j.xml</code> with <code>additivity="false"</code>:</p>
<div style="text-align:left;color:#000000; background-color:#ffffff; border:solid black 1px; padding:0.5em 1em 0.5em 1em; overflow:auto;font-size:small; font-family:monospace; "><span style="color:#236e25;">&lt;?xml version=&rdquo;1.0? encoding=&rdquo;UTF-8? ?&gt;</span><br />
<span style="color:#236e25;">&lt;!DOCTYPE log4j:configuration SYSTEM &ldquo;log4j.dtd&rdquo;&gt;</span></p>
<p>&lt;log4j:configuration xmlns:<span style="color:#994500;">log4j</span>=&rdquo;http://jakarta.apache.org/log4j/&rdquo;&gt;<br />
&nbsp;&nbsp;&lt;appender <span style="color:#994500;">name</span>=&rdquo;console&rdquo; <span style="color:#994500;">class</span>=&rdquo;org.apache.log4j.ConsoleAppender&rdquo;&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;param <span style="color:#994500;">name</span>=&rdquo;Target&rdquo; <span style="color:#994500;">value</span>=&rdquo;System.out&rdquo; /&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;layout <span style="color:#994500;">class</span>=&rdquo;org.apache.log4j.PatternLayout&rdquo;&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;param <span style="color:#994500;">name</span>=&rdquo;ConversionPattern&rdquo; <span style="color:#994500;">value</span>=&rdquo;%-5p %c{1} &ndash; %m%n&rdquo; /&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#881280;">&lt;/layout&gt;</span><br />
&nbsp;&nbsp;<span style="color:#881280;">&lt;/appender&gt;</span><br />
&nbsp;&nbsp;&lt;logger <span style="color:#994500;">name</span>=&rdquo;com.acme.LoggingTest&rdquo; <span style="color:#994500;">additivity</span>=&rdquo;false&rdquo;&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;level <span style="color:#994500;">value</span>=&rdquo;debug&rdquo; /&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;appender-ref <span style="color:#994500;">ref</span>=&rdquo;console&rdquo; /&gt;<br />
&nbsp;&nbsp;<span style="color:#881280;">&lt;/logger&gt;</span><br />
&nbsp;&nbsp;&lt;logger <span style="color:#994500;">name</span>=&rdquo;com.acme&rdquo; <span style="color:#994500;">additivity</span>=&rdquo;false&rdquo;&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;level <span style="color:#994500;">value</span>=&rdquo;debug&rdquo; /&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;appender-ref <span style="color:#994500;">ref</span>=&rdquo;console&rdquo; /&gt;<br />
&nbsp;&nbsp;<span style="color:#881280;">&lt;/logger&gt;</span><br />
&nbsp;&nbsp;<span style="color:#881280;">&lt;root&gt;</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;priority <span style="color:#994500;">value</span>=&rdquo;debug&rdquo; /&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;appender-ref <span style="color:#994500;">ref</span>=&rdquo;console&rdquo; /&gt;<br />
&nbsp;&nbsp;<span style="color:#881280;">&lt;/root&gt;</span><br />
<span style="color:#881280;">&lt;/log4j:configuration&gt;</span></div>
<p>More information on this topic can be found on the <a href="//wiki.apache.org/logging-log4j/Log4jXmlFormat" target="_blank">log4j wiki</a>.</p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fblog.mersoft.com%2F2008%2F11%2F03%2Fproblems-with-duplicate-or-multiple-log-messages-using-log4j-xml%2F&amp;linkname=Problems%20with%20duplicate%20or%20multiple%20log%20messages%20using%20log4j%20xml"><img src="http://blog.mersoft.com/wp-content/plugins/add-to-any/share_save_171_16.gif" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://blog.mersoft.com/2008/11/03/problems-with-duplicate-or-multiple-log-messages-using-log4j-xml/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Growing Your Business with Strategic Information Technology Planning</title>
		<link>http://blog.mersoft.com/2008/10/27/growing-your-business-with-strategic-information-technology-planning/</link>
		<comments>http://blog.mersoft.com/2008/10/27/growing-your-business-with-strategic-information-technology-planning/#comments</comments>
		<pubDate>Mon, 27 Oct 2008 15:17:06 +0000</pubDate>
		<dc:creator>Carolyn Wood</dc:creator>
				<category><![CDATA[Information Technology]]></category>
		<category><![CDATA[IT Budget]]></category>
		<category><![CDATA[IT Spending]]></category>

		<guid isPermaLink="false">http://blog.mersoft.com/?p=67</guid>
		<description><![CDATA[
As your business grows, your Information Technology needs grow apace, but too many companies fail to give IT the budgetary and planning priority it deserves.  Putting IT expenditures too far down the list of priorities will hamper your efficiency and stifle the growth of your business. 


Think strategically about IT, focusing on where you want [...]]]></description>
			<content:encoded><![CDATA[<div>
<p class="MsoNormal"><span style="black;">As your business grows, your I</span><span style="#1f497d;">nformation Technology</span><span style="black;"> needs grow apace, but too many companies fail to give IT the budgetary and planning priority it deserves.  Putting IT expenditures too far down the list of priorities will hamper your efficiency and stifle the growth of your business. </span></p>
</div>
<div>
<p class="MsoNormal"><span style="black;">Think strategically about IT, focusing on where you want to be in 6 months or a year, rather than where you are now, so that your IT capabilities will be able to work in tandem with your business strategy without lagging behind. It’s also vitally important to include training and support in your overall IT plan.  If your employees aren’t equipped to fully utilize the software</span><span style="#1f497d;"> and equipment—efficiency </span><span style="black;">will be significantly diminished and you won’t get full value for your IT investment. </span></p>
</div>
<div>
<p class="MsoNormal"><span style="black;">If you give low priority to IT planning, you will often find yourself in a reactive mode, forced to make quick decisions to replace technology that’s outdated or has suddenly failed.  This puts you always behind the curve,</span><span style="#1f497d;"> </span><span style="black;">buying </span><span style="#1f497d;">impulsively</span><span style="black;"> – a mistake that can saddle your business with mismatched products that are hard to administer and make subsequent training more difficult.  By thinking strategically in your IT planning and by understanding and anticipating your business needs, you can acquire and integrate leading technologies in a systematic fashion.</span></p>
</div>
<div>
<p class="MsoNormal"><span style="black;">Choose your IT vendors carefully.  Establish partnerships of trust with </span><span style="#1f497d;">your <a href="http://www.mersoft.com" target="_blank">preferred software development outsourcing firm</a>, </span><span style="black;">hardware suppliers, </span><span style="#1f497d;">commercial-off-the-shelf </span><span style="black;">software</span><span style="#1f497d;"> vendors</span><span style="black;">, and support</span><span style="#1f497d;"> people</span><span style="black;">.  Avoid the common pitfall of keeping your needs close to the vest.  You need to be clear and open about you</span><span style="#1f497d;">r</span><span style="black;"> current situation, your goals, and priorities. Find a company that is dedicated to understanding your particular business needs and to working within your parameters to develop <a href="http://www.mersoft.com" target="_blank">custom designed software</a> and hardware solutions</span><span style="black;"> that deliver good value and low risk. This strategic investment in </span><span style="#1f497d;">information technology</span><span style="black;"> helps create consistency and standardization and increases efficiency, which in turn reduces labor costs and helps your business grow.<br />
</span></p>
</div>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fblog.mersoft.com%2F2008%2F10%2F27%2Fgrowing-your-business-with-strategic-information-technology-planning%2F&amp;linkname=Growing%20Your%20Business%20with%20Strategic%20Information%20Technology%20Planning"><img src="http://blog.mersoft.com/wp-content/plugins/add-to-any/share_save_171_16.gif" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://blog.mersoft.com/2008/10/27/growing-your-business-with-strategic-information-technology-planning/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
