Site Network: Personal | Professional | Photography

Technical Blog

This blog will contain content related to Java, Seam, Security, my sites and projects, as well as other technical subjects I am interested in.

Comments and questions are welcome!

Archive for the ‘ATG’ Category

Why I Won’t Deal With Trans-American

Thursday, October 30th, 2008

Generally I'd never post about a negative business interaction. We've all worked with bad recruiters, bad employers, bad contractors, and so on. I like to give people the benefit of the doubt, and I don't want to bad-mouth anyone.

That said, Trans-American has pushed my limits too far. These guys are some sort of ATG recruiting firm or something, I really don't know. They started calling me perhaps 6 weeks ago, asking if I was interested in a position. I told them very clearly, that I was on a contract which I was very happy with. That I would be at least through the end of the year. And they could call again in January. The same guy called again the next week. And twice every week since. I could not have been more clear, every single time. I was polite, but clear that I was not interested. And it was the same guy calling every time. I don't know how many ATG architects named Devon at my phone number he's dealing with, but the complete inability to respect my clear wishes, is amazing.

I will never do business with Trans-American, and I would recommend that everyone else avoid them as well.

Preventing Multiple Submits On An ATG Form

Friday, October 10th, 2008

Often, you'll want to prevent impatient users from clicking a submit button multiple times, as you can end up with multiple actions taking place, or object state can get in a bad way leading to errors. For this example we'll assume you have a final Submit Order form that actually places the order, auth's the credit card, etc...

You can't simply disable the submit button onclick with ATG as typically the submit button is the input field that actually activates the handle method. I tried a bunch of things, before I was able to get something working, so I wanted to share that here.

First thing is to write some javascript that will handle all of the magic (this example uses jQuery):

 
<SCRIPT language="JavaScript">
function submitform() {
	$('#commitOrderButton').attr("href","#");
	document.myFormsName.submit();
}
</SCRIPT>
 

Second, you need to move the input that calls the correct handle method out of the submit button and into a hidden form field:

 
<dsp:input bean="CommitOrderFormHandler.commitOrder" value="submit" type="hidden" />
 

Thirdly you'll want to replace the submit input with a submit <a> which will call your javascript:

<a href="javascript:submitform()" id="commitOrderButton">
    <img src="/myapp/img/button/submitOrder.gif" alt="Submit Order" border="0" class="submitOrder" />
</a>

And that's it.

Huge Logs and OS X

Friday, August 22nd, 2008

Another reason that I love my mac: it can handle 1.3 GB log files easily with built in tools. I recently received a huge log file in zipped form from a co-worker with the warning "good luck opening it, textpad won't open it."

After unzipping it to the full 1.3 GB size I was able to open it using the built in Apple log viewer Console.

I ended up mostly using the terminal and tools like cat, less, grep, etc... to quickly find what I wanted and view the log lines surrounding the events I was interested in.

No problem.

Launch of the ATG Developer Community!!!

Friday, June 6th, 2008

I am thrilled to announce that we (Spark::red) have just launched the ATG Developer Community!

ATG Developer Community Logo

It is a free, open, community portal for everyone who works with ATG software, developers, architects, project managers, business users, everyone. The site has a wiki for posting articles, your own pages and blog entries, how-tos, and more. There is also a number of forums for discussion and asking questions. We also offer free Subversion code hosting, and Jira issue tracking for open source ATG related projects and code development.

Please check it out, register, and tell us what we can add to make it more useful.

Project Process - ATG Development Practices

Monday, June 2nd, 2008

I haven't written a text description of this process yet, sorry.

I've been really busy working on two upcoming things from Spark::red that I think you'll all appreciate, so bear with me.