<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2433071114840985780</id><updated>2011-11-27T19:26:35.188-05:00</updated><category term='JasperReports'/><category term='Websphere'/><category term='Easy PDF'/><category term='PDF'/><category term='Weblogic'/><category term='CVS'/><category term='AJAX'/><category term='CruiseControl'/><category term='Internet Explorer'/><category term='SSL'/><category term='CVSNT'/><category term='Windows'/><category term='IBM HTTP Server'/><category term='Kerberos'/><category term='JavaScript'/><category term='Java'/><category term='J-Integra'/><category term='Acegi'/><category term='Jawin'/><category term='SPNEGO'/><category term='Ant'/><category term='Single Signon'/><category term='CAS'/><category term='Extjs'/><title type='text'>La Femme Programmeur</title><subtitle type='html'>Java tips and tricks from a lady trying to play with the boys...</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>16</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2433071114840985780.post-326335612350118497</id><published>2011-08-12T09:48:00.000-04:00</published><updated>2011-08-12T09:48:09.557-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><category scheme='http://www.blogger.com/atom/ns#' term='Extjs'/><title type='text'>Proper Indentation on a Tree In ExtJS</title><content type='html'>I'm using ExtJS's tree functionality to display navigation on a website (and then skinning over it so that it doesn't look like a bunch of folders). &amp;nbsp;However, a major problem that I was having was that ExtJS absolutely does not allow multiple lines in its tree implementation. &amp;nbsp;You can update the stylesheet to allow for wrapping with the following entry in your CSS:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;.x-tree-node-anchor {&lt;br /&gt;	white-space: normal;	&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;However, this will cause your multiple lines to wrap without the proper indentation. &amp;nbsp;I struggled with this for many hours before finding an excellent extension that wraps properly. &amp;nbsp;You can find it here:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://jjulian.github.com/ext-extensions/"&gt;IndentedTreeNodeUI&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Mad props to JJulian for putting this together! &amp;nbsp;Hopefully, my links to his page will make this UI easier to find.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2433071114840985780-326335612350118497?l=lafemmeprogrammeur.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/326335612350118497/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2433071114840985780&amp;postID=326335612350118497' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/326335612350118497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/326335612350118497'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/2011/08/proper-indentation-on-tree-in-extjs.html' title='Proper Indentation on a Tree In ExtJS'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2433071114840985780.post-4286811993926400386</id><published>2010-02-07T14:04:00.002-05:00</published><updated>2010-02-07T14:11:02.624-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><category scheme='http://www.blogger.com/atom/ns#' term='AJAX'/><category scheme='http://www.blogger.com/atom/ns#' term='Extjs'/><title type='text'>Extjs: JsonStore will not load</title><content type='html'>I spent a lot of time trying to figure out why my JsonStore wouldn't load into my EditorGrid.  No errors were being thrown in Firebug, unless I used loadexception() on the store, in which case the exception really wasn't much help.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Finally, I figured out the problem.  Can you spot it?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;pre&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;var js = new Ext.data.JsonStore({ &lt;span class="Apple-style-span" style="white-space: normal; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;url: 'myurl.jsp',&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;sortInfo: {field: 'name', direction: 'ASC'},&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;baseParams: { elementid: '1' },&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;reader: new Ext.data.JsonReader({&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;root: 'elements',&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;id: 'id'&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;}, [&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;{name: 'id'},&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;{name: 'name'}&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;])&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;});&lt;br /&gt;js.load();&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If not, maybe you are having the same problem I was.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Apparently, when you create a JsonStore, it creates its own JsonReader.  So, if you specify a JsonReader, it will ignore yours and use the one it created.  By changing the store to Ext.data.Store, it fixed the issue.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A simple fix!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2433071114840985780-4286811993926400386?l=lafemmeprogrammeur.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/4286811993926400386/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2433071114840985780&amp;postID=4286811993926400386' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/4286811993926400386'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/4286811993926400386'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/2010/02/extjs-jsonstore-will-not-load.html' title='Extjs: JsonStore will not load'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2433071114840985780.post-8461565031690476141</id><published>2010-02-05T12:55:00.003-05:00</published><updated>2010-02-05T13:03:05.294-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='AJAX'/><category scheme='http://www.blogger.com/atom/ns#' term='Extjs'/><title type='text'>Extjs: XML Tag Name Mismatch</title><content type='html'>I'm using FileUploadField.js in Extjs.  It was working, but then I changed the URL to which I was submitting the form, and then started getting the following error:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;XML tag name mismatch (expected br) &lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This was curious, and I couldn't figure out what the issue was.   I googled and found very little help on the subject.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The solution?  The problem was in my back-end server code.  There was a null pointer exception in my Java code, which returned an HTML error page that is standard for our app.  The Extjs processing was expecting JSON, and couldn't find it, obviously.  Hence, the error.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If you are using &lt;a href="http://getfirebug.com/"&gt;Firebug&lt;/a&gt; (which you should be, &lt;i&gt;everyone&lt;/i&gt; should be), you will be able to trace the error better by looking at the "Net" tab when you access your Extjs component that is throwing the error.  After that, it was an easy fix.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2433071114840985780-8461565031690476141?l=lafemmeprogrammeur.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/8461565031690476141/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2433071114840985780&amp;postID=8461565031690476141' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/8461565031690476141'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/8461565031690476141'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/2010/02/extjs-xml-tag-name-mismatch.html' title='Extjs: XML Tag Name Mismatch'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2433071114840985780.post-8973774583524902528</id><published>2009-07-14T11:03:00.000-04:00</published><updated>2009-07-14T11:03:34.038-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CAS'/><category scheme='http://www.blogger.com/atom/ns#' term='Acegi'/><category scheme='http://www.blogger.com/atom/ns#' term='Weblogic'/><title type='text'>New Project: CAS 3 w/Weblogic 9.2</title><content type='html'>It's been a while, but I'm sure that there are shenanigans afoot since I'm starting a new project of implementing CAS/Acegi (Spring Security) with Weblogic 9.2.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2433071114840985780-8973774583524902528?l=lafemmeprogrammeur.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/8973774583524902528/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2433071114840985780&amp;postID=8973774583524902528' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/8973774583524902528'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/8973774583524902528'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/2009/07/new-project-cas-3-wweblogic-92.html' title='New Project: CAS 3 w/Weblogic 9.2'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2433071114840985780.post-5202853360658138893</id><published>2008-08-22T15:10:00.002-04:00</published><updated>2008-08-22T15:19:02.965-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CVSNT'/><category scheme='http://www.blogger.com/atom/ns#' term='CVS'/><category scheme='http://www.blogger.com/atom/ns#' term='CruiseControl'/><title type='text'>Issues with CVSNT - Switching Between Unicode and Ascii</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Problem:&lt;/span&gt; Using TortoiseCVS, a developer somehow checked in a bunch of SQL files as Unicode.  I am nsure what exactly the developer did to do so, but likely it was caused by right clicking on a file when adding it to CVS and randomly selecting options from the "format" and "keywords" menus there.  Who knows.&lt;br /&gt;&lt;br /&gt;As the files were checked in and checked out of CVS by various developers, the files became more and more corrupted, merges were difficult, and the developers were unable to do their work without searching for random Unicode characters in the files and deleting them.  In addition, CruiseControl stopped recognizing changes to files for updates.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Solution:&lt;/span&gt; A command-line interface needs to be used, I was unable to find a resolution with the CVSNT GUI interface.&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;First, CVS.exe needs to be in your windows path.  This was already done on our server because of CruiseControl and ANT using it.&lt;/li&gt;&lt;li&gt;The command from a windows command line is:&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;cvs update -kkv &lt;filename&gt;&lt;/filename&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Once you have done this, you can use CVSNT to commit the file.  If you do not commit, the changes will not be made.  HOWEVER, you cannot commit using standard CVSNT means (TortoiseCVS).  You need to right click on the file, select "Command" and enter the command &lt;span style="font-family:courier new;"&gt;commit -f&lt;/span&gt;&lt;/li&gt;&lt;li&gt;The -f on the commit is absolutely necessary.&lt;/li&gt;&lt;/ol&gt;That's it!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2433071114840985780-5202853360658138893?l=lafemmeprogrammeur.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/5202853360658138893/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2433071114840985780&amp;postID=5202853360658138893' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/5202853360658138893'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/5202853360658138893'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/2008/08/issues-with-cvsnt-switching-between.html' title='Issues with CVSNT - Switching Between Unicode and Ascii'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2433071114840985780.post-8516352686696754715</id><published>2008-07-09T11:28:00.002-04:00</published><updated>2008-07-09T11:34:13.181-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Jawin'/><category scheme='http://www.blogger.com/atom/ns#' term='Easy PDF'/><title type='text'>Fumbling with JAWIN</title><content type='html'>Currently, there is no quick and dirty way to use opensource Java tools to convert Word Documents to PDF.  So, to do this task I've been using &lt;a href="http://www.pdfonline.com/easypdf/sdk/index.htm"&gt;BCL Technologies' Easy PDF&lt;/a&gt;.  Since this application is written as COM, a java to COM bridge is necessary to use the SDK with Java.  With Easy PDF 5.0, I had set up my own method of using the opensource tool &lt;a href="http://jawinproject.sourceforge.net/"&gt;Jawin&lt;/a&gt; to do this bridging.  Now, I'm upgrading to Easy PDF 5.1 and they have a Jawin Java build included in their build, which I was pretty excited about.  However, they built the jar with Java version 6, which I cannot use as we're stuck with Java 5 since we are dependent on Websphere (why would you not include more than one build with different java versions anyway?  Whatever).&lt;br /&gt;&lt;br /&gt;Since I had used Jawin before, I decided to attempt to do what we needed to do with Jawin, Java 5 and Easy PDF 5.1.  The initial backwards compatibility with our code that was using Easy PDF 5.0 was smooth and simple - the build worked the same as I'd done before and no code changes were required.&lt;br /&gt;&lt;br /&gt;Moving on to the new requirements, which is why we're upgrading Easy PDF.  We needed to utilize additional features - merging two or more PDFs into one, splitting one PDF into two, deleting pages from a PDF, adding a watermark to a PDF.  I rebuilt the code with Jawin to use these new features.  And, there were difficulties.  This is more of a complaint about Jawin than about Easy PDF.&lt;br /&gt;&lt;br /&gt;Jawin is a great idea and on the surface (at least for my purposes), easy to use.  However, the current version is an alpha version, and hasn't been released in several years.  The real problem using it came from trying to use the Variant object.  &lt;a href="http://jawinproject.sourceforge.net/jawin.html"&gt;Documentation&lt;/a&gt; for how to use this object is spotty.  Examples in the sample code are non-existent.  Internet searches brought back a &lt;a href="http://discuss.develop.com/archives/wa.exe?A2=ind0307e&amp;amp;L=jawin&amp;amp;P=1722"&gt;couple of threads&lt;/a&gt;, but most were just people asking the same questions that I had and not getting any answers.&lt;br /&gt;&lt;br /&gt;Trying to create a Variant object was my first problem.  I ran into multiple issues, and I was simply trying to pass something an array of Strings.  That should not be as difficult as it was.  I did get the "org.jawin.COMException: 8000ffff: A VT_VARIANT must be combined with VT_BYREF (base vartype 12)" yesterday, when trying to use myvariant.vt = VarTypes.VT_VARIANT or even using VarTypes.VT_BSTR, which is what I thought I was supposed to be doing.  It is difficult to comprehend WHY we are putting things into a stream in order to make them into a variant, and how to get them out again.&lt;br /&gt;&lt;br /&gt;So, I finally followed &lt;a href="http://discuss.develop.com/archives/wa.exe?A2=ind0704c&amp;amp;L=jawin&amp;amp;P=54"&gt;this guy's advice&lt;/a&gt;, which I found this morning.  I overrode the class that was generated by the type browser.  Instead of creating a method that accepts a Variant that is an array of strings, I created a method that just takes an array of strings and still invoked in the same way that Jawin was doing.  And guess what?  It worked! So, why does the typebrowser create the Variant method in the first place?&lt;br /&gt;&lt;br /&gt;I wish the Jawin folks would continue to work on their project and get some of these bugs fixed.  It's a great product with a lot of hope, but it needs help and it needs to be more user friendly to those java folks out there who don't know COM.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2433071114840985780-8516352686696754715?l=lafemmeprogrammeur.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/8516352686696754715/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2433071114840985780&amp;postID=8516352686696754715' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/8516352686696754715'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/8516352686696754715'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/2008/07/fumbling-with-jawin.html' title='Fumbling with JAWIN'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2433071114840985780.post-4100341943597296591</id><published>2008-06-06T09:16:00.003-04:00</published><updated>2008-06-10T14:32:29.204-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PDF'/><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><category scheme='http://www.blogger.com/atom/ns#' term='SSL'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet Explorer'/><title type='text'>"Secure and Insecure Items" Warning on every page in Internet Explorer</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Problem:&lt;/span&gt; Users connecting to the application using SSL get the mixed content "This page contains secure and insecure items" warning message on every page in the application.  This issue is only happening with 2 users of the system, both are using Internet Explorer Version 7.  One user also reports problems opening PDF files.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Troubleshooting:&lt;/span&gt; The users are up to date on their Windows patches.  Internet Explorer is up to date.  Adobe Acrobat Reader is up to date on the system of the user with the PDF issues.&lt;br /&gt;&lt;br /&gt;The next thing to try is a &lt;a href="http://support.microsoft.com/kb/925014/en-us"&gt;suggestion from Microsoft.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Stay tuned...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;UPDATE, June 10: The users unchecked the "show mixed content" setting in their IE Settings.  This is not recommended as it is a security hole, but it's the best we could do.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2433071114840985780-4100341943597296591?l=lafemmeprogrammeur.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/4100341943597296591/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2433071114840985780&amp;postID=4100341943597296591' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/4100341943597296591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/4100341943597296591'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/2008/06/secure-and-insecure-items-warning-on.html' title='&quot;Secure and Insecure Items&quot; Warning on every page in Internet Explorer'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2433071114840985780.post-4715770784159132048</id><published>2008-05-21T15:35:00.004-04:00</published><updated>2008-05-22T10:09:08.025-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SSL'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet Explorer'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><category scheme='http://www.blogger.com/atom/ns#' term='JasperReports'/><title type='text'>JasperReports failure to download PDF in Internet Explorer</title><content type='html'>&lt;span style="font-weight: bold;"&gt;What is supposed to happen:&lt;/span&gt;  We have a PDF document being generated using JasperReports in a struts-based Java application.  The PDF writes to the screen, where the user is prompted to open or save this generated PDF file.  Usually, the user clicks "open" and views the file.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;What is happening:&lt;/span&gt; When Internet Explorer goes to display the Open/Save/Cancel dialogue box, it instead displays a warning message: "Internet Explorer cannot download document.pdf from server"&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Notes:&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;This is not the only place in the application where a PDF is generated in Jasper and written to an output stream.  The other PDFs are working, although each has subtle differences here and there as to how they are generated.  Nothing that is different is causing the problem.&lt;/li&gt;&lt;li&gt;This application was recently converted to SSL, and the issue appears the be happening only on the SSL version for MOST but not ALL affected users.&lt;/li&gt;&lt;li&gt;Not all users are affected, some can access without problems.  In addition, some users (including myself) get the error in one environment and not another, with the same codebase.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Investigation:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;I read up on a few sites:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://support.microsoft.com/kb/812935/en-us"&gt;Microsoft&lt;/a&gt; lists this as a bug in IE and offers several suggestions.  My &lt;strong class="uiterm"&gt;Do not save encrypted pages to disk&lt;/strong&gt; check box is not checked.&lt;/li&gt;&lt;li&gt;&lt;a href="http://forum.java.sun.com/thread.jspa?threadID=233446&amp;amp;start=0&amp;amp;tstart=0"&gt;This big thread&lt;/a&gt; offers more suggestions about response headers.  I have tried each of these.&lt;/li&gt;&lt;li&gt;&lt;a href="http://forum.java.sun.com/thread.jspa?threadID=586671&amp;amp;start=0&amp;amp;tstart=0"&gt;Another thread&lt;/a&gt;.  More of the same.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;I've tried changing the headers.  Original code:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;     response.setHeader("Content-Disposition", "attachment; filename=Preview.pdf");&lt;br /&gt;     response.addHeader("Content-Description", "Download");&lt;br /&gt;     response.setContentType("application/pdf");&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;New code:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;response.setHeader("Content-Length", String.valueOf(file.length));&lt;br /&gt;     response.setHeader("Content-Disposition", "attachment; filename=Preview.pdf");&lt;br /&gt;     response.addHeader("Content-Description", "Download");&lt;br /&gt;     response.setContentType("application/pdf");&lt;br /&gt;     response.setHeader("Pragma", "public");&lt;br /&gt;     response.setHeader("Cache-control", "must-revalidate");&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;No luck.  I've tried loading the headers in various orders, and I've tried various header values, including blank for pragma and cache-control, and other values.  No luck.&lt;br /&gt;&lt;br /&gt;So, I'm still working.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Resolution, May 22, 2008:&lt;/span&gt;&lt;br /&gt;The problem is fixed and has nothing to do with anything mentioned here.  There was a silly block of formerly unreachable code that was now reachable, either due to a novice programmer making changes or the Websphere upgrade from 6.0 to 6.1.  This code, I kid you not, removed the attachment and reset the HTTP status to 404.  I never saw this code yesterday when I was working on this, but I do feel kind of stupid now.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2433071114840985780-4715770784159132048?l=lafemmeprogrammeur.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/4715770784159132048/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2433071114840985780&amp;postID=4715770784159132048' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/4715770784159132048'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/4715770784159132048'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/2008/05/what-is-supposed-to-happen-we-have-pdf.html' title='JasperReports failure to download PDF in Internet Explorer'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2433071114840985780.post-569466690838361238</id><published>2008-05-06T17:04:00.000-04:00</published><updated>2008-05-16T11:34:40.908-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ant'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='J-Integra'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><title type='text'>Windows Environment Variables: Solved</title><content type='html'>Some of you may recall &lt;a href="http://lafemmeprogrammeur.blogspot.com/2007/11/help-windows-people.html"&gt;this issue&lt;/a&gt; that I was having with Windows Environment Variables not resolving properly on my servers.  Today, on the verge of launching a shiny new production server (supposed to happen this weekend, more likely next weekend), I have resolved the issue.&lt;br /&gt;&lt;br /&gt;The solution comes from &lt;a href="http://support.microsoft.com/kb/329308"&gt;here&lt;/a&gt;, but requires more explanation.&lt;br /&gt;&lt;br /&gt;If you are experiencing this problem, you are apparently setting your environment variables by right clicking on My Computer, selecting Properties &amp;amp; going to the advanced tab.  Not correct.  You need to right click on my computer and select MANAGE, go to advanced, and set the environment variables there.  I tried this months ago, but apparently if you're already experiencing the issue, just resetting the environment variables there won't work.  You need to delete them and recreate them in the Manage screen, including your Path variable.&lt;br /&gt;&lt;br /&gt;Thank goodness, that one was a real bother.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2433071114840985780-569466690838361238?l=lafemmeprogrammeur.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/569466690838361238/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2433071114840985780&amp;postID=569466690838361238' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/569466690838361238'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/569466690838361238'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/2008/05/windows-environment-variables-solved.html' title='Windows Environment Variables: Solved'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2433071114840985780.post-674064124924512794</id><published>2008-04-29T13:57:00.000-04:00</published><updated>2008-05-16T11:16:35.522-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SSL'/><category scheme='http://www.blogger.com/atom/ns#' term='IBM HTTP Server'/><category scheme='http://www.blogger.com/atom/ns#' term='Websphere'/><title type='text'>IBM HTTP Server Certificate Resources</title><content type='html'>&lt;p&gt;More troubles with IBM HTTP Server Certificates.  We have one physical server, with an IBM HTTP Server and one physical instance of Websphere 6.1 running.  I want requests to come in through 2 separate URLs,  be routed to the one HTTP Server, then sent to the proper App Server node (same application context though) based on the URL/Virtual Host.  AND, I want all of this to happen with SSL.  Fun, huh?&lt;br /&gt;&lt;br /&gt;I wanted to share more links that I found that helped me out...&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://publib.boulder.ibm.com/infocenter/wasinfo/v4r0/index.jsp?topic=/com.ibm.support.was40.doc/html/Plug_in/swg21215867.html"&gt;GSK_ERROR in Plugin Log&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www-1.ibm.com/support/docview.wss?uid=swg21139573"&gt;Merging plugin-cfg.xml files from multiple nodes&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;I've also once again had difficulty with WSAdmin and SSL... make sure that if you're having certificate issues with WSAdmin (or starting and stopping Websphere) to run it from the command line and not some other way.  It will show you the output of the certificate and allow you to install it.  If only the plugin behaved this way.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2433071114840985780-674064124924512794?l=lafemmeprogrammeur.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/674064124924512794/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2433071114840985780&amp;postID=674064124924512794' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/674064124924512794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/674064124924512794'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/2008/04/ibm-http-server-certificate-resources.html' title='IBM HTTP Server Certificate Resources'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2433071114840985780.post-1207567467689183305</id><published>2008-04-02T11:14:00.002-04:00</published><updated>2008-05-16T15:13:40.467-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SSL'/><category scheme='http://www.blogger.com/atom/ns#' term='Kerberos'/><category scheme='http://www.blogger.com/atom/ns#' term='SPNEGO'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='CAS'/><category scheme='http://www.blogger.com/atom/ns#' term='Websphere'/><category scheme='http://www.blogger.com/atom/ns#' term='Acegi'/><title type='text'>Setting up Acegi, CAS, Kerberos/SPNEGO and Websphere 6.1 Part TWO</title><content type='html'>&lt;p&gt;Continued from &lt;a href="http://lafemmeprogrammeur.blogspot.com/2008/03/tech-stuff-part-one-setting-up-acegi.html"&gt;&lt;span style="text-decoration: underline;"&gt;part one&lt;/span&gt;&lt;/a&gt;&lt;a href="http://kletco.blogspot.com/2008/03/tech-stuff-part-one-setting-up-acegi.html"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;b&gt;Step Four: Setup IBM HTTP Server and Websphere Plugin to Websphere Server 6.1&lt;/b&gt;&lt;/span&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;In order to prepare for SSL on Websphere, a web server front end should be used.&lt;span style=""&gt;  &lt;/span&gt;Apache, IIS, etc can all be used, however IBM HTTP Server is the easiest setup and comes installed with WAS.&lt;span style=""&gt;  &lt;/span&gt;Documentation for this setup is surprisingly unclear and difficult to locate.&lt;span style=""&gt;  &lt;/span&gt;If you are unfamiliar with WAS or unfamiliar with this type of setup, you may be at a loss of even knowing where to start.&lt;span style=""&gt;  &lt;/span&gt;Here are some hints.&lt;/p&gt;  &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;IBM      HTTP Sever and Websphere Plugin is installed with WAS 6.1 by default.&lt;span style=""&gt;  &lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Most of the installation and configuration for the webserver can be done through the Websphere Administrative Console under Servers &lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;à&lt;/span&gt;&lt;/span&gt;      Webservers.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Create the new Web Server through the admin console, make sure you can access it, and make sure that WAS can connect to the HTTP Server administrator.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;If you      are familiar with Apache Web Server, IBM HTTP Server is based off of Apache.&lt;span style=""&gt;  &lt;/span&gt;So, Apache documentation may be helpful      if changes need to be made to the httpd.conf file.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Once you've got the HTTP Server up and running, generate the plug in file and propagate the plug in file to the HTTP Server.&lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;i style=""&gt;Gotchas:&lt;/i&gt;&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;If you      are setting up SSL, just get the web server running first.&lt;span style=""&gt;  &lt;/span&gt;It's helpful to use WAS's snoop servlet      to test the configuration.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;If      your app is already installed, you will need to map the module to the      server.&lt;span style=""&gt;  &lt;/span&gt;Do this from the Admin      Console, Applications &lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;à&lt;/span&gt;&lt;/span&gt; Your Application &lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;à&lt;/span&gt;&lt;/span&gt;      Manage Modules.&lt;span style=""&gt;  &lt;/span&gt;You will see your      app, and you should see your web server in the server column.&lt;span style=""&gt;  &lt;/span&gt;If not, you can map it on that screen.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;When      setting up CAS on Websphere, if you access the CAS login screen, you may      get a JSP error.&lt;span style=""&gt;  &lt;/span&gt;Details of this      can be found &lt;a href="http://tp.its.yale.edu/pipermail/cas/2007-December/007068.html"&gt;here&lt;/a&gt;      and the solution provided worked.&lt;span style=""&gt;       &lt;/span&gt;Yes, you will need to rebuild CAS.&lt;/li&gt;&lt;/ul&gt;  &lt;span style="font-weight: bold;font-size:100%;" &gt;Step Five: Setup SSL on Websphere 6.1&lt;/span&gt;  &lt;p class="MsoNormal"&gt;Setting up SSL on Websphere is a nightmare compared to setting up SSL on Tomcat.&lt;span style=""&gt;  &lt;/span&gt;Very helpful in the SSL setup process was the following document:&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;&lt;a href="http://www.ibm.com/developerworks/websphere/techjournal/0612_birk/0612_birk.html"&gt;SSL, certificate, and key management enhancements for even stronger security in WebSphere Application Server V6.1&lt;/a&gt;.&lt;span style=""&gt;  &lt;/span&gt;Otherwise, documentation of setting up SSL on Websphere was very hard to find.&lt;span style=""&gt;  &lt;/span&gt;The server was set up with a self-signed certificate in the development environment.&lt;span style=""&gt;  &lt;/span&gt;Like web servers, certificates can be generated and managed in WAS's Admin Console, under Security &lt;/span&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;à&lt;/span&gt;&lt;/span&gt; &lt;span style=""&gt;SSL certificate and key management.&lt;span style=""&gt;  &lt;/span&gt;For CAS and Acegi to work properly, there needs to be trust at every level – between the web server and the app server and vice versa, and between your application and CAS. &lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;For this project, first SSL was set up on Websphere in order to make CAS available via SSL.&lt;span style=""&gt;  &lt;/span&gt;CAS was deployed onto the Websphere server, and was accessed via the HTTP Server.&lt;span style=""&gt;  &lt;/span&gt;The application itself was still running on Tomcat locally, but the CAS URLs were changed from the Local CAS to the Websphere (remote) CAS.&lt;span style=""&gt;  &lt;/span&gt;On the HTTP Server side, a Virtual Host needed to be set up (through WAS Admin Console) linking the 443 port from the app server to the web server.&lt;span style=""&gt;  &lt;/span&gt;A key store had to be specified at this point.&lt;span style=""&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;Also under the web server, a global directive needed to be specified with the  (server IP Address):443 &lt;/span&gt;&lt;span style=""&gt; as the listen port.&lt;span style=""&gt;  &lt;/span&gt;A key store had to be specified here as well.&lt;span style=""&gt;  &lt;/span&gt;When setting these up through the admin console, WAS will automatically generate and regenerate the httpd.conf file.&lt;span style=""&gt;  &lt;/span&gt;If in doubt, also regenerate the plug in file and populate it down to the HTTP server.&lt;span style=""&gt;  &lt;/span&gt;Restart the HTTP server after these changes are made.&lt;/span&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;i style=""&gt;&lt;span style=""&gt;Gotchas:&lt;/span&gt;&lt;/i&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;When in doubt, if you are getting a "unable to find valid certification path to requested target" error, use the utility provided &lt;a href="http://blogs.sun.com/andreas/entry/no_more_unable_to_find"&gt;here&lt;/a&gt;      to resolve the issue.&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;While most documentation regarding CAS and Acegi setup suggest using cacerts as a truststore, Websphere will occasionally throw errors when doing this.&lt;span style=""&gt;       &lt;/span&gt;Either use one of the p12 format truststore/keystores or comment      out the truststore variable all together.&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;This is a difficult process.&lt;span style=""&gt;  &lt;/span&gt;Turn on Websphere tracing and pay      attention to Websphere error logs to work out all of the problems.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;/p&gt;  &lt;span style="font-weight: bold;font-size:130%;" &gt;Step Six: Set up CAS for SPNEGO / Kerberos Authentication&lt;/span&gt;  &lt;p class="MsoNormal"&gt;This step goes hand in hand with Step five, and they can be done together.&lt;span style=""&gt;  &lt;/span&gt;JA-SIG already has some excellent documentation on &lt;a href="http://www.ja-sig.org/wiki/display/CASUM/SPNEGO"&gt;setting up SPNEGO&lt;/a&gt;.&lt;span style=""&gt;  &lt;/span&gt;If all of the steps are followed, you should be able to log into CAS without a login screen.&lt;span style=""&gt;  &lt;/span&gt;Like with the Websphere SPNEGO setup, you will have to make sure that your client browser is properly configured.&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;i style=""&gt;Gotchas:&lt;/i&gt;&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;None!&lt;span style=""&gt;  &lt;/span&gt;This works cleanly out of the box.&lt;/li&gt;&lt;/ul&gt;  &lt;br /&gt;&lt;br /&gt;&lt;h2 style="font-weight: normal;"&gt;Step Seven: Install Application with Acegi and access CAS with SPNEGO.&lt;/h2&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:100%;"&gt;Once all of the previous steps are complete, the final step is to install the application and access CAS for logging in without interaction.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt; &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:100%;"&gt;&lt;i style=""&gt;Gotchas:&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:100%;"&gt;Since Acegi requires filtering on URLs where the page does not actually exist, Websphere 6.1 will not handle this properly.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;  &lt;/span&gt;&lt;span style="font-size:100%;"&gt;To fix this, a custom property in the      Web Container must be set.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;  &lt;/span&gt;&lt;span style="font-size:100%;"&gt;The      property is com.ibm.ws.webcontainer.invokefilterscompatibility and it      should&lt;/span&gt;&lt;span style="font-size:100%;"&gt;  &lt;/span&gt;&lt;span style="font-size:100%;"&gt;be set to &lt;i style=""&gt;true.&lt;/i&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;  &lt;/span&gt;&lt;span style="font-size:100%;"&gt;More details can be found &lt;a href="http://forum.springframework.org/showthread.php?t=34106&amp;amp;highlight=com.ibm.ws.webcontainer.invokefilterscompatibility"&gt;here&lt;/a&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:100%;"&gt;CAS      would not authenticate properly with Websphere version &lt;a href="http://6.1.0.13/"&gt;6.1.0.13&lt;/a&gt;.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;  &lt;/span&gt;&lt;span style="font-size:100%;"&gt;Upgrading to &lt;a href="http://6.1.0.15/"&gt;6.1.0.15&lt;/a&gt; did resolve the      issue.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p class="MsoNormal"&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;span style=""&gt;&lt;server&gt;&lt;/server&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2433071114840985780-1207567467689183305?l=lafemmeprogrammeur.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/1207567467689183305/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2433071114840985780&amp;postID=1207567467689183305' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/1207567467689183305'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/1207567467689183305'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/2008/05/continued-from-part-one-step-four-setup.html' title='Setting up Acegi, CAS, Kerberos/SPNEGO and Websphere 6.1 Part TWO'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2433071114840985780.post-2261674895357747506</id><published>2008-03-28T13:54:00.000-04:00</published><updated>2008-05-16T11:36:26.377-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SSL'/><category scheme='http://www.blogger.com/atom/ns#' term='Kerberos'/><category scheme='http://www.blogger.com/atom/ns#' term='SPNEGO'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='CAS'/><category scheme='http://www.blogger.com/atom/ns#' term='Single Signon'/><category scheme='http://www.blogger.com/atom/ns#' term='Websphere'/><category scheme='http://www.blogger.com/atom/ns#' term='Acegi'/><title type='text'>Setting up Acegi, CAS, Kerberos/SPNEGO and Websphere 6.1 Part ONE</title><content type='html'>&lt;p&gt;This article assumes a basic understanding of Acegi Security System for Spring, Central Authentication Service (CAS), Kerberos/SPNEGO and Websphere Application Server 6.1. &lt;span style=""&gt; &lt;/span&gt;Acegi was used for the authorization of users and access to protected pages, and CAS was used for authorization of users using a transparent / non-interactive login using Kerberos and SPNEGO. &lt;span style=""&gt; &lt;/span&gt;    &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;For more information on any of these products, please see:&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;a href="http://www.acegisecurity.org/"&gt;Acegi Security System for Spring&lt;/a&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;a href="http://www.ja-sig.org/products/cas/"&gt;Central Authentication Service by      JA-SIG&lt;/a&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;a href="http://java.sun.com/j2se/1.4.2/docs/guide/security/jgss/single-signon.html"&gt;Single      Sign-On Using Kerberos in Java&lt;/a&gt; (by Sun)&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;a href="http://www-128.ibm.com/developerworks/java/library/j-gss-sso/"&gt;Simplify      Enterprise Java Authentication with Single Sign-On&lt;/a&gt; (by Sun)&lt;/li&gt;&lt;/ul&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;Websphere Application Server does come with a Single Sign-on package, but it was decided not to use this for several reasons:&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;While WAS will use Kerberos and some Websphere setup is required, a full Websphere implementation would have required more use of proprietary IBM code than was necessary.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;CAS       will handle requests and allow set up with very few code changes. &lt;span style=""&gt; &lt;/span&gt;In addition, Acegi contains plugins for CAS, and it was relatively easy to get the two to work together (adding Websphere into the mix was the true difficulty).&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Developers will be using an Eclipse/Tomcat combination for development, and therefore will not be able to use proprietary Websphere code.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Documentation       for Websphere’s proprietary code was lacking.&lt;/li&gt;&lt;/ol&gt;&lt;/ul&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;This project was to replace a jCifs/Acegi security implementation, so the Acegi part of the application was already written and did not require a great deal of configuration.&lt;span style=""&gt;  &lt;/span&gt;This document is meant to explain the steps that were taken to set up the infrastructure.&lt;/p&gt;  &lt;p style="font-weight: bold;" class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;Step One: Install CAS – Tomcat&lt;/p&gt;    &lt;p class="MsoNormal"&gt;CAS Server 3.1.1 was used and installed on Tomcat.&lt;span style=""&gt;  &lt;/span&gt;CAS can be downloaded from the &lt;a href="http://www.ja-sig.org/products/cas/downloads/index.html"&gt;CAS Download Page&lt;/a&gt;.&lt;span style=""&gt;  &lt;/span&gt;The basic setup was used, which allowed users on Tomcat to authenticate on the login page as long as the username matched the password that was entered.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;i style=""&gt;Gotchas:&lt;/i&gt; &lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;SSL      had to be enabled on Tomcat. &lt;span style=""&gt; &lt;/span&gt;There are many guides for how to do this (including some guides created by CAS users), but by far the best and most easy to follow was the &lt;a href="http://tomcat.apache.org/tomcat-5.5-doc/ssl-howto.html"&gt;SSL How-To&lt;/a&gt;      Located on Apache’s Website.&lt;/li&gt;&lt;/ul&gt;  &lt;p style="font-weight: bold;" class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;Step Two: Integrate Acegi with CAS on Tomcat&lt;/p&gt;    &lt;p class="MsoNormal"&gt;Step-by-step documentation for how to install Acegi in your app and use it with CAS can be found in the &lt;a href="http://www.acegisecurity.org/guide/springsecurity.html#cas"&gt;Acegi help guide&lt;/a&gt;. &lt;span style=""&gt; &lt;/span&gt;There are instructions for setting up Acegi with CAS using both CAS version 2 and CAS Version 3, but if Kerberos / SPNEGO is going to be used, it is best to go with CAS Version 3. &lt;span style=""&gt; &lt;/span&gt;The easiest setup is to use &lt;a href="http://kletco.googlepages.com/contacts-cas.war"&gt;contacts-cas.war&lt;/a&gt; as an example. &lt;span style=""&gt; &lt;/span&gt;This can be found in older versions of Acegi, but cannot be found in the current version of Acegi. &lt;span style=""&gt; &lt;/span&gt;At this point, you should be able to log into CAS using the userid=password list that was standard in the InMemoryDaoImpl found in the help guide.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;i style=""&gt;Gotchas:&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;Not      being very familiar with Spring, I had difficulty getting the application to      start after my initial setup. &lt;span style=""&gt; &lt;/span&gt;My      application-context was setup improperly, causing the startup to fail. &lt;span style=""&gt; &lt;/span&gt;Check your application-context carefully      before deployment.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;SSL      MUST be used at this point.&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;span style="font-weight: bold;"&gt;Step Three: Setup Kerberos / SPNEGO on Websphere 6.1&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;The best documentation for setting up Kerberos/SPNEGO on Websphere can be found in the Techdoc by IBM: &lt;a href="http://www-03.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/WP101065"&gt;Websphere with SPNEGO: Configuring SPNEGO in Websphere Environments&lt;/a&gt;.&lt;span style=""&gt;  &lt;/span&gt;Following the instructions in this document will completely set up the security that is necessary on the Websphere side. &lt;span style=""&gt; &lt;/span&gt;At this point, if you are brave enough to integrate Acegi directly with WAS, you can do so.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;i style=""&gt;Gotchas:&lt;/i&gt; &lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;The      way the document is worded and set up, it will turn on Java 2 security in      Websphere. &lt;span style=""&gt; &lt;/span&gt;If this is desired,      great.&lt;span style=""&gt;  &lt;/span&gt;If not, many applications      may not run. &lt;span style=""&gt; &lt;/span&gt;There are two options here: 1) Add .policy files to specify what applications have the rights to do what (you can do this using the was.policy found in ${WAS_HOME}/profiles/default/properties or in the java.policy file found at ${WAS_HOME}/java/jre/lib/security). &lt;span style=""&gt; &lt;/span&gt;2) Uncheck the checkbox labeled “Use Java 2 security to restrict application access to local resources” box found in the admin console under Security -&gt; Secure administration, applications, and infrastructure.&lt;span style=""&gt;  &lt;/span&gt;This is the      easisest way and is recommended if this type of security is not a concern.      &lt;span style=""&gt; &lt;/span&gt;Of course, it will allow your applications to run wild, accessing all kinds of resources and wreaking havoc all over the place. &lt;span style=""&gt; &lt;/span&gt;If you are interested instead in editing policy files, documentation is hard to find, but some documentation can be found on &lt;a href="http://java.sun.com/j2se/1.4.2/docs/guide/security/PolicyFiles.html"&gt;Sun’s      Website&lt;/a&gt;.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;The      client’s browser requires setup in order to send the Kerberos token      through in the header.&lt;span style=""&gt;  &lt;/span&gt;Information      for doing this can be found in the Techdoc listed above, but can also be      found elsewhere on the web.&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-style: italic;"&gt;to be continued...  &lt;a href="http://lafemmeprogrammeur.blogspot.com/2008/05/continued-from-part-one-step-four-setup.html"&gt;Continue to Part Two&lt;/a&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2433071114840985780-2261674895357747506?l=lafemmeprogrammeur.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/2261674895357747506/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2433071114840985780&amp;postID=2261674895357747506' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/2261674895357747506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/2261674895357747506'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/2008/03/tech-stuff-part-one-setting-up-acegi.html' title='Setting up Acegi, CAS, Kerberos/SPNEGO and Websphere 6.1 Part ONE'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2433071114840985780.post-9221926988228270408</id><published>2008-03-07T19:34:00.000-05:00</published><updated>2008-05-16T11:12:29.531-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='CAS'/><title type='text'>CAS: My newest project...</title><content type='html'>&lt;a href="http://www.ja-sig.org/products/cas/"&gt;Central Authentication Service&lt;/a&gt;&lt;br /&gt;This is what I'm working on.  I used to work with Siteminder, now it's CAS.  Interesting stuff...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2433071114840985780-9221926988228270408?l=lafemmeprogrammeur.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/9221926988228270408/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2433071114840985780&amp;postID=9221926988228270408' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/9221926988228270408'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/9221926988228270408'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/2008/03/cas-my-newest-project.html' title='CAS: My newest project...'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2433071114840985780.post-1928066927671274952</id><published>2007-11-16T15:59:00.000-05:00</published><updated>2008-05-16T11:10:44.179-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ant'/><category scheme='http://www.blogger.com/atom/ns#' term='J-Integra'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><title type='text'>Help! Windows People...</title><content type='html'>I'm on a windows server.  I have 3 environment variables -&lt;br /&gt;&lt;br /&gt;ANT_HOME&lt;br /&gt;JINTEGRA_HOME&lt;br /&gt;Path&lt;br /&gt;&lt;br /&gt;Path includes references to ANT_HOME and JINTEGRA_HOME, as well as other variables like JAVA_HOME. When I open a command prompt, all of the paths (including those referencing JAVA_HOME) resolve, but the ANT_HOME and JINTEGRA_HOME variables do not. If I go to the environment variable window, open the Path variable as if I'm going to edit it, but then don't edit it, and close it again and then close and reopen my command prompt, echo %Path% shows the correct path with ANT_HOME and JINTEGRA_HOME resolved.&lt;br /&gt;&lt;br /&gt;Know what I mean? Does this make sense? In other words, ANT_HOME and JINTEGRA_HOME are never properly added to my path unless I edit the environment variable before opening a command line. If I don't edit the environment variable first, I get something like:&lt;br /&gt;&lt;br /&gt;&gt; echo %Path%&lt;br /&gt;c:\blah\bin;c:\program files\programiinstalled\bin;%ANT_HOME%\bin;%JINTEGRA_HOME%\bin&lt;br /&gt;&lt;br /&gt;See?&lt;br /&gt;&lt;br /&gt;It really sucks. I've tried googling it. I've tried ripping the path apart, but if you are familiar with windows you know there's a LOT of things in that variable.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://aricsblog.blogspot.com/2007/02/command-paths-not-working-and.html"&gt;This article&lt;/a&gt; is exactly what I'm experiencing, except that his solution isn't going to work for me because this is on a server and I just can't have this going on.&lt;br /&gt;&lt;br /&gt;Has anyone ever seen this before?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2433071114840985780-1928066927671274952?l=lafemmeprogrammeur.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/1928066927671274952/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2433071114840985780&amp;postID=1928066927671274952' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/1928066927671274952'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/1928066927671274952'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/2007/11/help-windows-people.html' title='Help! Windows People...'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2433071114840985780.post-3813187272564479096</id><published>2007-08-15T18:52:00.000-04:00</published><updated>2008-05-16T11:09:27.258-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Websphere'/><title type='text'>Websphere Funny of the Day</title><content type='html'>From &lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;IBM Websphere: Deployment and Advanced Configuration&lt;/span&gt;&lt;/span&gt;:  "If you don't have an understanding of core network commands, be resourceful.  Use people skills to get assistance from someone who does, or simply use the popular internet search utilities to gain a better understanding of the topic."&lt;br /&gt;&lt;br /&gt;Something cracks me up about a vendors book recommending that you "use people skills" or simply use Google to solve your problem.  Or, maybe I'm just punchy because I've been doing this all day.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2433071114840985780-3813187272564479096?l=lafemmeprogrammeur.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/3813187272564479096/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2433071114840985780&amp;postID=3813187272564479096' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/3813187272564479096'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/3813187272564479096'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/2007/08/websphere-funny-of-day.html' title='Websphere Funny of the Day'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2433071114840985780.post-2167696489025153556</id><published>2007-08-09T18:37:00.000-04:00</published><updated>2008-05-16T11:05:52.872-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ant'/><category scheme='http://www.blogger.com/atom/ns#' term='CVS'/><category scheme='http://www.blogger.com/atom/ns#' term='CruiseControl'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><title type='text'>Warning: Java/CVS/CruiseControl/Ant</title><content type='html'>For those that don't want to spend 3 hours trying to figure this out like I just did...&lt;br /&gt;&lt;br /&gt;This proves that the Ant documentation is better than the CVS documentation, CVSNT documentation and the CruiseControl documentation.&lt;br /&gt;&lt;br /&gt;If you are setting up CruiseControl on a PC other than the same PC/Server where your CVS repository is located, you need to have CVS.exe in your path.  I didn't have CVS.exe on my PC at all, so even though I was successfully connecting to the CVS repository, the CVSLog command wasn't working.  What this meant is that CruiseControl was doing the build as usual, but it was NOT getting changes from CVS, since without a CVSLog, it didn't know what was going on on the server.  After fiddling with just about everything, I finally tried to set up an Ant task to get the CVSLog and the ANT documentation finally explained that I need CVS.exe in the path to get this command to work.  Thank you, Ant team!!  Everyone else sucks.&lt;br /&gt;&lt;br /&gt;I do love opensource, though.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2433071114840985780-2167696489025153556?l=lafemmeprogrammeur.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lafemmeprogrammeur.blogspot.com/feeds/2167696489025153556/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2433071114840985780&amp;postID=2167696489025153556' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/2167696489025153556'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2433071114840985780/posts/default/2167696489025153556'/><link rel='alternate' type='text/html' href='http://lafemmeprogrammeur.blogspot.com/2007/08/warning-javacvscruisecontrolant.html' title='Warning: Java/CVS/CruiseControl/Ant'/><author><name>Kim</name><uri>http://www.blogger.com/profile/00512369678051380428</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.ggpht.com/_eah2Il2fQ9o/SnOjRYkJkDI/AAAAAAAAZi0/Kp-ODw_VVjI/s144/IMG_1439.jpg'/></author><thr:total>0</thr:total></entry></feed>
