Book | JIRA | Confluence | Forum

20040929 Wednesday September 29, 2004

Version 1.0 Status Update Category: Spring Live

Things are cranking right along in the editing process of the last 3 chapters. Chapter 7 is ready for PDF and Chapters 8 and 9 haved moved from tech edit to copy edit. Dion and Amy are machines! After everything is through copy edit, I'll look at all the JIRA bugs and fix the ones I can (no new features, sorry). Shortly after, 1.0 will be released. With any luck, it might even happen this week! (2004-09-29 12:48:37.0) Permalink Comments [0]

20040924 Friday September 24, 2004

Chapter 9 off to Tech Edit and Manning Challenge Category: Spring Live

That's it folks. I've finished the preliminary draft of Spring Live 1.0. Chapter 9 (AOP) was the last one to complete for a full release. Now we get to test and see if the SourceBeat model is all it's cracked up to be. Craig's Spring in Action is on Amazon, but he's not done with it yet. I expect he'll be finishing soon and then it's a race!!

Can SourceBeat make the book available for download before Manning's Spring in Action arrives in stores? I hope so. Maybe you'll even get a couple of updates before the first Spring in Action is delivered! Good luck Craig - may the most efficient company win. ;-) (2004-09-24 18:43:22.0) Permalink Comments [4]

Free Wi-Fi in Denver Category: SourceBeat

Thanks to the DJUG Wiki, I found a free hotspot at the Capri Coffee Break near my house. I'm sitting in it now, working on Spring Live and loving it. The best part? When I walked in they had a big sign that they've recently got there liquor license and they'll soon be serving wine and beer - and getting a new name (CapuVino).

Very cool - maybe local SourceBeat authors should start meeting here once a week to write some prose? (2004-09-24 13:11:50.0) Permalink Comments [0]

20040922 Wednesday September 22, 2004

Configure your caching with Spring Category: Spring Live

From the looks of it, Spring 1.1.1 might have support for setting up caching solutions. Check out Dmitriy's EhCacheManagerFactoryBean. Also, Pieter Coucke's AOP Cache looks pretty cool. I'm going to give Peter's solution a test drive for Chapter 9. If it works, I'll make sure and write about it.

Speaking of caching, it looks like Rod has checked in some testing support classes. I'd love to include these in Chapter 8, but alas, it's already in tech edit. (2004-09-22 17:07:49.0) Permalink Comments [1]

20040913 Monday September 13, 2004

Chapter 9 Preliminary Outline Category: Spring Live

I'm planning on starting work on Chapter 9 later this week. My plan is to write the code needed for the chapter this week and then finish writing the chapter next week. Hopefully I can squeeze in a little AppFuse development while I'm in the coding mode. I do hope to keep this chapter short and sweet (i.e. 15-20 pages) since the last two were around 40. AOP usage will likely increase and this chapter will probably require an update. Here's the summary of this chapter so far:

Aspect Oriented Programming has received a lot of hype in the Java community in the last year. What is AOP and how can it help you in your applications? This chapter will cover the basics of AOP and give some useful examples of where/how AOP might help you. It will also cover how security can be a concern for AOP-enabled applications.

Below is the preliminary outline - let me know if there's something I'm not including that you'd like to see.

  • Chapter Overview
  • Security - should you be concerned?
  • Definitions and Concepts
  • Pointcuts
  • Advice Types
  • AOP Examples
    • Logging - Yeah, I know it's overused, but it's a good introduction for beginners.
    • Transactions
    • E-Mail Notification
    • Exceptions: Spring to Custom
    • Others you'd like to see?
  • AspectJ Integration
  • AspectWerkz Integration
  • Summary

Comments are appreciated. (2004-09-13 00:40:22.0) Permalink Comments [9]

20040910 Friday September 10, 2004

Chapter 8 off to Tech Edit Category: Spring Live

I've just finished up Chapter 8, Testing Spring Applications, and sent it off to tech edit. This chapter turned out to be quite a bit longer than I thought it would be. Because of this, I ended up dropping "Automated Testing" and "Performance Testing" (which I added later) from the original outline. Hopefully these topics will make it into the book as one of the updates. Would you be interested in an update to Chapter 8 with these sections or possible a whole new chapter? You can voice your opinion on SourceBeat's wiki, where I have the candidate update chapters listed.

The final Word document for Chapter 8 ended up being 45 pages long. Yikes - that's the longest one yet! There's a lot of code, so hopefully it won't take very long to read through the text. It's too bad the PDFs don't allow copy and paste, b/c it sure would be a lot easier for folks to do the tutorials. SourceBeat is talking to Adobe and apparently there will soon be a way to specify a region as not-protected - and then you'll be able to copy/paste. In the meantime, I think the best solution is for me to offer you a download for the beginning of a chapter and a download for the end (after all the chapter's code has been integrated).

Next up - Chapter 9 on AOP. This will be the last chapter before 1.0 - so I'll be pretty pumped when I get it done. From what I've seen of the editing process so far, it'll probably take a month after that to declare the book as "good to go." Hopefully I can try and speed up the process so Spring Live 1.0 is published and available for download in the middle of October.

As far as AOP in Chapter 9, I did want to ask if there's anything particular that you'd like to see in this chapter? I'm planning on covering Spring's AOP framework and how it works. Then I'll show how to use AOP in MyUsers, and also touch on AspectJ and AspectWerkz integration. I'll try to publish an outline for Chapter 9 early next week. (2004-09-10 03:42:27.0) Permalink Comments [8]

20040905 Sunday September 05, 2004

[ANN] Spring 1.1 Released Category: Spring Live

Download or read the Release Notes.

Nice! It doesn't look like JSP 2.0 tag files (for easier JSP forms) made it into this release. The good news is that a patch has been submitted to Spring's JIRA. Hopefully this will be the last release for a month or so while I finish up Spring Live. ;-)

Update: Form simplification tags for JSP and example. (2004-09-05 21:57:17.0) Permalink Comments [5]

20040902 Thursday September 02, 2004

Summary of Spring/JTA Compatibility Category: Spring Live

From the Spring Developers mailing list:

Spring's JtaTransactionManager within EJB BMT or web components:

• Everything but transaction suspension will work properly on any J2EE server, as it just touches the JTA UserTransaction, which is properly covered by standard J2EE.

• Transaction suspension (REQUIRES_NEW, NOT_SUPPORTED) requires the JTA TransactionManager, which is not a public component of standard J2EE. However, it is a standard JTA interface, defined by the JTA spec, with somewhat well-defined semantics to rely on if - it is available.

• Vendor-specific lookup of JTA TransactionManager is necessary, as J2EE does not define a standard location for it. By default, we autodetect whether the UserTransaction object implements the TransactionManager interface, which is the case of for a surprisingly large number of J2EE servers.

• The BEA docs state that the JTA TransactionManager is officially supported for EJB BMT and web components, on both 7.0 and 8.1. It even explictly mentions that one reason to do this is transaction suspension. Official support for other vendors remains to be checked.

• WebLogic needs "forceResume" to resume suspended transactions that have been marked rollback-only: This is provided by WebLogicJtaTransactionManager. Besides that special case, suspend/resume should work properly with Spring's standard JtaTransactionManager on WebLogic too (on both 8.1 and 7.0).

• Suspend/resume via the JTA TransactionManager needs to be tested thoroughly on various J2EE servers: Currently known to work are Resin, JBoss, Orion/OC4J, JOnAS/JOTM, WebSphere 4.0, WebLogic 8.1 (with the above special treatment). To be tested: WebSphere 5.x, WebLogic 7.0.

Spring's JtaTransactionManager within EJB CMT:

• Using direct JTA within EJB CMT is not covered by standard J2EE: Effectively, it is clearly forbidden by the EJB spec. This applies directly to Spring's JtaTransactionManager within EJB CMT, no matter if just touching the JTA UserTransaction or the JTA TransactionManager too.

• Nevertheless known to work on WebLogic 8.1, including transaction suspension. Known to work on WebLogic 7.0 too, except for transaction suspension. Most important ones to test: WebSphere 4.0 and 5.x. Of course, this scenario remains outside of the J2EE spec: Explicit support needs to be checked for each vendor.

In total, the situation with direct JTA (no EJB CMT) is quite good: In such a scenario, most J2EE servers work properly with JtaTransactionManager's suspend/resume out-of-the-box (see above); I assume that WebSphere 5.x will work too. It seems that only WebLogic causes trouble here, and just in a special case...

(2004-09-02 17:45:15.0) Permalink Comments [5]

20040831 Tuesday August 31, 2004

New Struts Live Author Category: Author

Just in case you didn't know - Jonathan Lehr is taking over Struts Live for SourceBeat. I met Jonathan at OSCON and he's definitely one sharp guy. I'm sure all the Struts Live subscribers will find his Struts knowledge is top notch. (2004-08-31 21:23:27.0) Permalink Comments [2]

Use Hibernate3 with Spring Category: Spring Live

If you want to live on the bleeding edge you can use Hibernate3 with Spring. But first you'll need to download the patch. I haven't tried it since living on the bleeding edge often gives me a headache.

BTW, I noticed that has a new look. Same drab colors, just with new shapes and curves. They're also renaming Hiber8IDE to Hibernate Console, which seems like a better name to me. It always seems wierd to me when Eclipse plugins have "IDE" in their names. It's really just a plugin, not a whole new IDE. (2004-08-31 10:46:57.0) Permalink Comments [2]

Weblog Archives
Click this photograph for National Geographic's Photo of the Day
Photo of the Day
Spring Logo
+ SourceBeat Weblogs

+ Spring Framework

Spring Live Book
• Raible Designs
• Who is Matt Raible?
Recent Comments
  • [4] Chapter 9 off to Tech Edit and Manning Challenge
  • [1] Configure your caching with Spring
  • [9] Chapter 9 Preliminary Outline
  • [8] Chapter 8 off to Tech Edit
  • [5] [ANN] Spring 1.1 Released
  • [5] Summary of Spring/JTA Compatibility
  • [2] New Struts Live Author
  • [2] Use Hibernate3 with Spring