You can subscribe to this list here.
| 2003 |
Jan
|
Feb
(55) |
Mar
(100) |
Apr
(203) |
May
(330) |
Jun
(190) |
Jul
(302) |
Aug
(323) |
Sep
(197) |
Oct
(245) |
Nov
(490) |
Dec
(330) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(194) |
Feb
(400) |
Mar
(416) |
Apr
(415) |
May
(359) |
Jun
(381) |
Jul
(491) |
Aug
(311) |
Sep
(291) |
Oct
(273) |
Nov
(355) |
Dec
(266) |
| 2005 |
Jan
(306) |
Feb
(303) |
Mar
(520) |
Apr
(346) |
May
(255) |
Jun
(221) |
Jul
(171) |
Aug
(247) |
Sep
(147) |
Oct
(125) |
Nov
(165) |
Dec
(65) |
| 2006 |
Jan
(90) |
Feb
(53) |
Mar
(121) |
Apr
(103) |
May
(113) |
Jun
(103) |
Jul
(104) |
Aug
(67) |
Sep
(78) |
Oct
(82) |
Nov
(78) |
Dec
(70) |
| 2007 |
Jan
(77) |
Feb
(76) |
Mar
(63) |
Apr
(30) |
May
(47) |
Jun
(41) |
Jul
(44) |
Aug
(44) |
Sep
(49) |
Oct
(33) |
Nov
(25) |
Dec
(21) |
| 2008 |
Jan
(45) |
Feb
(13) |
Mar
(15) |
Apr
(12) |
May
(9) |
Jun
(33) |
Jul
(30) |
Aug
(7) |
Sep
(20) |
Oct
(17) |
Nov
(20) |
Dec
(10) |
| 2009 |
Jan
(8) |
Feb
(5) |
Mar
(12) |
Apr
(17) |
May
(19) |
Jun
(97) |
Jul
(77) |
Aug
(33) |
Sep
(24) |
Oct
(41) |
Nov
(16) |
Dec
(32) |
| 2010 |
Jan
(24) |
Feb
(14) |
Mar
(50) |
Apr
(71) |
May
(70) |
Jun
(64) |
Jul
(45) |
Aug
(62) |
Sep
(32) |
Oct
(4) |
Nov
(12) |
Dec
(2) |
| 2011 |
Jan
(1) |
Feb
(3) |
Mar
(4) |
Apr
(3) |
May
(6) |
Jun
(1) |
Jul
(4) |
Aug
(3) |
Sep
(4) |
Oct
(6) |
Nov
(3) |
Dec
(3) |
| 2012 |
Jan
(4) |
Feb
(8) |
Mar
(6) |
Apr
(10) |
May
(2) |
Jun
(3) |
Jul
(11) |
Aug
(10) |
Sep
(4) |
Oct
|
Nov
(1) |
Dec
(1) |
| 2013 |
Jan
(4) |
Feb
(1) |
Mar
(9) |
Apr
(1) |
May
(8) |
Jun
(2) |
Jul
(5) |
Aug
(2) |
Sep
|
Oct
(3) |
Nov
(10) |
Dec
(8) |
| 2014 |
Jan
(3) |
Feb
(12) |
Mar
(9) |
Apr
(12) |
May
(2) |
Jun
|
Jul
(3) |
Aug
(1) |
Sep
(1) |
Oct
(4) |
Nov
|
Dec
(2) |
| 2015 |
Jan
(1) |
Feb
(3) |
Mar
(4) |
Apr
(9) |
May
(2) |
Jun
(2) |
Jul
|
Aug
(2) |
Sep
(7) |
Oct
(9) |
Nov
(7) |
Dec
(9) |
| 2016 |
Jan
(7) |
Feb
(5) |
Mar
(5) |
Apr
(5) |
May
(8) |
Jun
(4) |
Jul
(5) |
Aug
(4) |
Sep
(6) |
Oct
(7) |
Nov
(2) |
Dec
(3) |
| 2017 |
Jan
(7) |
Feb
(8) |
Mar
(7) |
Apr
(3) |
May
(4) |
Jun
(3) |
Jul
(5) |
Aug
(8) |
Sep
(4) |
Oct
(2) |
Nov
(3) |
Dec
|
| 2018 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2019 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
| 2021 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2022 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
| 2024 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2025 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
(2) |
Aug
(5) |
Sep
(2) |
Oct
|
Nov
|
Dec
(1) |
| 2026 |
Jan
(1) |
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Keith D. <kd...@cs...> - 2004-07-07 05:20:23
|
I've considerably refined several areas of the rich client codebase this =
past weekend. Specifically:
1. A rich client's application lifecycle is much more defined, with =
hooks for inserting custom initialization logic within that lifecycle. =
Related, the Application is now a generic service locator and overall =
controller / manager for the app. No more hard wired stuff in there =
(for example, the setupActionHandling() problem as Ollie / Ronald =
mentioned.) The lifecycle delegate (aka application advisor) is now the =
place where application-specific initialization & destruction logic is =
defined.
2. The command framework in the rcp.command package is now "the" gui =
action framework for rcp; obsoleting the code in the rcp.action package. =
In general this framework is more powerful, better designed, and easier =
to use. I would like to remove the rcp.action code as soon as possible.
3. Initial support for multiple Application Windows per Application is =
committed.
I've updated the Petclinic sample app to demonstrate each of these major =
additions. Here are some details on each:
Regarding lifecycle:
- When a Spring Rich client application starts, the ApplicationLauncher =
is responsible for bootstrapping the application's main context, =
triggering the creation of the single global "Application" instance. =
This Application singleton is injected a configured =
"ApplicationLifecycle" instance, which it delegates to at well-defined =
points within the Application startup and shutdown process to facilitate =
customization. For example, before the application initializes, it =
calls "onPreInitialize(this)" on the lifecycle object, allowing for =
custom initialization logic. Before the first window is displayed, it =
calls "showIntro" and "onPreWindowOpen", allowing for configuration of =
the window (or popping up a login prompt.) The Lifecycle object is also =
responsible for returning a configured set of "command groups" for each =
opened window as it is created. These command groups are used to =
configure the new window's menu bar, tool bar, and status bar (which are =
now all optional.) So in general, the Application manages instanting =
new windows, pages, views, etc. as needed in response to user events, =
and the lifecycle object is the delegate that is passed these objects at =
the appropriate times for customization (where customization may be =
programatic or pulled from a Spring bean factory.)
Regarding commands:
- I've hinted about the power of the new command framework in a previous =
email. Here is a off the cuff feature break down:
- The hiearchy of commands is now much better defined - you now =
have:
ActionCommand - Subclasses are exectuable gui actions (e.g. =
RenameCommand, OpenNewWindowCommand, ExitCommand); each subclass =
implements the "doExecuteCommand()" method.
=20
TargetableActionCommand - commands whose appearance is centrally =
managed but whose implementation changes in response to user events; for =
example, switching views. These commands are also useful when you want =
to handle a command invocation, but can't subclass ActionCommand =
(perhaps your object is part of another inheritence hierarchy.)
ToggleComand - an action command that is a toggleable selection; =
"on/off"
Command groups - are command containers and are factories for =
all your "grouping controls" - e.g menu bars, tool bars, button bars, =
menus, status bars, radio button groups (exclusive groups), etc. They =
don't execute anything, they group other commands. Groups can nest =
other groups.
- Commands are factories for the GUI controls that make sense for =
their particular command class. For example, ActionCommands can produce =
JButtons and menu items that, when clicked, execute the command. Toggle =
Commands produce check box menu items or toggle buttons. Command groups =
produce all your "bars" as mentioned previously. A single command =
(group or action) can manage one to many created controls. "Manage" =
meaning if the command is changed centrally (for example, a property =
changes or a new member is added to a group), all bound controls are =
updated.
- All command control construction is delegated to extensible =
control factories to facilitate customization & integration with custom =
controls.
- Support for action command interceptors; logic to execute before / =
after each action command.
- Support for command execution parameters; abritrary data that =
should be passed to a command upon execution. Parameters are "one off" =
hints to the command, cleared after each invocation. Useful for =
decoupling the command from callers who get the data the command needs =
to execute.
- Each Command has a "face descriptor" which manages its visual =
appearance (configured automatically for you using a CommandConfigurer, =
where typical implementations are BeanPostProcessors.) A command's =
visibility and enabled state (be it a group or a action command) are =
both controllable; any bound controls automatically update. A command's =
visual appearance can be configured differently based on the context in =
which it is bound to a particular control (for example, actions added to =
tool bars generally have tool tips, but those added to menus do not.)
- Support for global commands is finally nailed down. Global =
commands -- instances of TargetableActionCommand -- are managed by each =
application window instance; implementation is delegated to the active =
view within the window (and changes as the active view is switched by =
the user.) If no implementation exists for a global command when a view =
is activated, that global comand is automatically disabled. A command =
manager (aka registry) is owned by each instantiated window.
- As hinted at above, the command lifecycle is finally correct. =
Commands are instantiated on a per window basis, managed by that windows =
CommandManager. Take a look at the petclinic sample for an illustration =
of this; the new "commands-context.xml" file declares each command =
object and the command manager as a "singleton" bean; however, a new =
associated bean factory is instantiated on each new ApplicationWindow =
creation. This is the appropriate cardinality; gui actions/commands are =
managed by their parent window and shouldn't be global application =
objects. (as an aside, if you look close, you'll see the "View" =
cardinality is still wrong; views should also be managed by their =
containing windows... a view descriptor is global, but not the view =
itself...that's a TODO for sure :-))
- Command groups can be updated dynamically at runtime after the =
application is started. For example, perhaps you want to defer =
contributing a set of actions to the tool bar command group until a view =
is activated, and remove them when the view is closed. Each command =
group has an expansion point where additional members may be appended =
dynamically. Any bound controls are automatically rebuilt as new =
members are added. Commands to update may be located using a convenient =
file-path like notation.e.g "fileMenu/newMenu/myCommand".
What's next?
- We want the Petclinic sample to really start taking advantage of some =
of these new features by adding in additional functionality typical of a =
standard enterprise j2ee app. Things like login authentication, =
preferences, better illustration of integration with middle tier =
services, etc. In general we want to further develop the sample as soon =
as possible--Ben is helping out here which is great.
- I think we're on our way to release candidate form... documentation =
still needs considerable work, but we're getting there. I think a =
remaining "killer feature" we need is support for multiple views on the =
same page, and views that are dockable/stackable (integration with a =
slick windowing system.)
Feedback very much welcome! Keith |
|
From: Daniel M. <mi...@pa...> - 2004-07-07 03:45:10
|
Hello, I am having problems accessing my message resources when they are loaded with ReloadableResourceBundleMessageSource (RRBMS). When RRBMS is used, the properties files must be located outside the classpath to be reloadable. However, the JSTL <fmt:bundle> tag's "basename" attribute and the <fmt:message> tag's "bundle" attribute only accept a classpath url (e.g. basename="com.example.messages"). It would be nice if they accepted file url's as well (e.g. basename="WEB-INF/jsp/common/messages.properties"), but they don't :( Normally this should not be a problem because Spring puts the message bundle where JSTL can find it when a JSTLView is rendered. However, I want to use message resources in error pages (404, 403, java.lang.Exception, etc.) which are not rendered by Spring. Error pages are configured in web.xml; the Spring context where the message source locations are configured is bypassed when they are rendered. Is there any way to load message resources explicitly inside a jsp page when the properties file is not on the classpath? Could another tag be added to the Spring tag library that would fetch the message bundle(s) from the Srping configuration and/or load the bundle from the file resource? Example usage: <spring:bundle> <!-- - [Reloadable]ResourceBundleMessageSource configured - in the Spring context is used to retrieve messages --> <fmt:message key="some.message.key" /> </spring:bundle> OR <spring:bundle resource="WEB-INF/jsp/common/messages.properties"> <!-- - Message resources are loaded from the location - specified by the "resource" attribute --> <fmt:message key="some.message.key" /> </spring:bundle> Aside: IMHO the "code" attribute of the <spring:message> tag should to be deprecated and changed to match JSTL "key" attribute. That would enable a developer to easily switch from <fmt:message> to <spring:message> without changing attribute name(s)--plus it's less attributes to remember because it's standard...even the Struts <bean:message> tag got that one right. Thanks, Daniel Miller |
|
From: Brian M. <mcc...@fo...> - 2004-07-07 01:44:34
|
Juergen, Thank you! Now that there are some basics to work from, I'd be happy to=20= help out =3D) Getting a connection from a PB instance can be done via=20 pb.serviceConnectionManager.getConnection(); Also, if you want change detectopm without real object level=20 transactions, this can be done via a couple fairly simple listeners on=20= the PB instance (copy-on-read/compare-on-commit). The code for this is=20= hidden in OJB CVS but is all of maybe 60 lines, I'd be happy to add it=20= to Spring if anyone wants it. -Brian On Jul 2, 2004, at 3:02 PM, j=FCrgen h=F6ller [werk3AT] wrote: > Hi everybody, > > On the occasion of the recent TSS thread on OJB 1.0 final, I've=20 > decided to give OJB PersistenceBroker integration a go. I've already=20= > committed the initial bunch a couple of hours ago, providing=20 > PersistenceBrokerTemplate, PersistenceBrokerTransactionManager, etc. > > This initial stuff took just about 4 hours, including getting OJB to=20= > work with a simple example! I was pleasantly surprised by how easy OJB=20= > is to set up. I'm not fond really fond of its static initializer=20 > model, but it does work and is simple enough to get going. > > I'm currently working on support for exposing the JDBC Connection in=20= > PersistenceBrokerTransactionManager and other refinements. I plan to=20= > add a Petclinic data access version for OJB this weekend: As far as I=20= > can judge at this point of time, this should be simple enough to do. > > One of the distinct characteristics of OJB's PersistenceBroker is that=20= > it offers all of OJB's mapping and querying capabilities, but does not=20= > attempt to provide object-level transactions, i.e. does not do=20 > automatic change detection but rather rely on explicit store calls.=20 > For Petclinic-style web apps, this is more than enough. > > The stuff in CVS does work already, so whoever's interested, feel free=20= > to have a look at it :-) > > Juergen > > > ------------------------------------------------------- > This SF.Net email sponsored by Black Hat Briefings & Training. > Attend Black Hat Briefings & Training, Las Vegas July 24-29 - > digital self defense, top technical experts, no vendor pitches, > unmatched networking opportunities. Visit www.blackhat.com > _______________________________________________ > Springframework-developer mailing list > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer > |
|
From: Brian M. <mcc...@fo...> - 2004-07-07 01:15:10
|
On Jul 6, 2004, at 11:25 AM, j=FCrgen h=F6ller [werk3AT] wrote: > BTW, I'm also in contact with some of the OJB developers, suggesting=20= > some configuration improvements for OJB 1.1. > Much appreciated! Getting off the singleton kick will make me happy,=20 regardless of what else is done. -Brian |
|
From: <al...@jt...> - 2004-07-06 22:04:44
|
<html><head>
<style>
.white { color:#FFFFFF }.index { background-color:#FFFFFF }.index-passed { =
color:#004400 }.index-failed { color:#FF0000; font-weight:bold }.index-head=
er { font-weight:bold }.link { font-family:arial,helvetica,sans-serif; font=
-size:10pt; color:#FFFFFF; text-decoration:none; }.tab-table { margin: 0em =
0em 0.5em 0em; }.tabs { font-family:arial,helvetica,sans-serif; font-size:8=
pt; color:#000000; font-weight:bold; padding: 0em 2em; background-color:#EE=
EEEE; }.tabs-link { color:#000000; text-decoration:none; }.tabs-link:visite=
d { color:#000000; text-decoration:none; }.tabs-selected { font-family:aria=
l,helvetica,sans-serif; font-size:8pt; color:#000000; font-weight:bold; pad=
ding: 0em 2em; }.tabs-selected { border: inset; }.header-title { font-famil=
y:arial,helvetica,sans-serif; font-size:12pt; color:#000000; font-weight:bo=
ld; }.header-label { font-weight:bold; }.header-data { font-family:arial,he=
lvetica,sans-serif; font-size:10pt; color:#000000; }.modifications-data { f=
ont-family:arial,helvetica,sans-serif; font-size:8pt; color:#000000; }.modi=
fications-sectionheader { background-color:#000066; font-family:arial,helve=
tica,sans-serif; font-size:10pt; color:#FFFFFF; }.modifications-oddrow { ba=
ckground-color:#CCCCCC }.modifications-evenrow { background-color:#FFFFCC }=
.changelists-oddrow { background-color:#CCCCCC }.changelists-evenrow { back=
ground-color:#FFFFCC }.changelists-file-spacer { background-color:#FFFFFF }=
.changelists-file-evenrow { background-color:#EEEEEE }.changelists-file-odd=
row { background-color:#FFFFEE }.changelists-file-header { background-color=
:#666666; font-family:arial,helvetica,sans-serif; font-size:8pt; color:#FFF=
FFF; }.compile-data { font-family:arial,helvetica,sans-serif; font-size:8pt=
; color:#000000; }.compile-error-data { font-family:arial,helvetica,sans-se=
rif; font-size:8pt; color:#FF0000; }.compile-warn-data { font-family:arial,=
helvetica,sans-serif; font-size:8pt; color:#CC9900; }.compile-sectionheader=
{ background-color:#000066; font-family:arial,helvetica,sans-serif; font-s=
ize:10pt; color:#FFFFFF; }.distributables-data { font-family:arial,helvetic=
a,sans-serif; font-size:8pt; color:#000000; }.distributables-sectionheader =
{ background-color:#000066; font-family:arial,helvetica,sans-serif; font-si=
ze:10pt; color:#FFFFFF; }.distributables-oddrow { background-color:#CCCCCC =
}.unittests-sectionheader { background-color:#000066; font-family:arial,hel=
vetica,sans-serif; font-size:10pt; color:#FFFFFF; }.unittests-oddrow { back=
ground-color:#CCCCCC }.unittests-data { font-family:arial,helvetica,sans-se=
rif; font-size:8pt; color:#000000; }.unittests-error { font-family:arial,he=
lvetica,sans-serif; font-size:8pt; color:#FF0000; }.checkstyle-oddrow { bac=
kground-color:#CCCCCC }.checkstyle-data { font-family:arial,helvetica,sans-=
serif; font-size:8pt; color:#000000; }.checkstyle-sectionheader { backgroun=
d-color:#000066; font-family:arial,helvetica,sans-serif; font-size:10pt; co=
lor:#FFFFFF; }
</style>
</head><body>
<p>
<table width=3D"98%" border=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=
=3D"center"><tr><td class=3D"header-title">BUILD COMPLETE - =
build.46</td></tr><tr><td class=3D"header-data"><span class=
=3D"header-label">Date of build: </span>07/07/2004 00:15:51</td></tr><=
tr><td class=3D"header-data"><span class=3D"header-label">Time to build:&nb=
sp;</span>13 minutes 30 seconds</td></tr><tr><td class=3D"header-data"><spa=
n class=3D"header-label">Last changed: </span>07/06/2004 19:14:36</td>=
</tr><tr><td class=3D"header-data"><span class=3D"header-label">Last log en=
try: </span>Update version to 1.1-dev</td></tr></table><p>
<table xmlns=3D"http://www.w3.org/TR/html4/strict.dtd" width=3D"98%" border=
=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=3D"center"/><p>
<p>
<table xmlns=3D"http://www.w3.org/TR/html4/strict.dtd" width=3D"98%" border=
=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=3D"center"><tr><td class=
=3D"compile-sectionheader"> Errors/Warnings: (=
6) </td></tr><tr><td><pre class=3D"compile-error-data">N=
ote: Some input files use or override a deprecated API.<br class=3D"none"/>=
Note: Recompile with -deprecation for details.Note: /jteam/build/checkout/s=
pring/spring/mock/org/springframework/mock/web/MockHttpSession.java uses or=
overrides a deprecated API.<br class=3D"none"/>Note: Recompile with -depre=
cation for details.<br class=3D"none"/>Note: Some input files use or overri=
de a deprecated API.<br class=3D"none"/>Note: Recompile with -deprecation f=
or details.<br class=3D"none"/></pre></td></tr></table><p>
<p>
<table width=3D"98%" border=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=
=3D"center"><tr><td colspan=3D"4" class=3D"unittests-sectionheader"> =
Unit Tests: (1470) </td></tr><tr><td><tabl=
e width=3D"98%" border=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=3D"c=
enter"><tr><td class=3D"unittests-data"> failure =
</td><td width=3D"40%" class=3D"unittests-data">testHomePage</td><td width=
=3D"40%" class=3D"unittests-data">org.springframework.apptests.buildtest.Al=
lTests</td></tr></table></td></tr><tr></tr><tr><td colspan=3D"2"> </td=
></tr><tr><td colspan=3D"4" class=3D"unittests-sectionheader"> =
Unit Test Error Details: (1) </td></tr><tr=
><td class=3D"unittests-data" colspan=3D"2"> Test: test=
HomePage</td></tr><tr><td class=3D"unittests-data" colspan=3D"2"> =
Class: org.springframework.apptests.buildtest.AllTests</td></tr>=
<tr><td class=3D"unittests-data" colspan=3D"2"> Type: junit.=
framework.AssertionFailedError</td></tr><tr><td class=3D"unittests-data" co=
lspan=3D"2"> Message: Exception while testing URL http://loc=
alhost:13084/buildtest:java.io.IOException</td></tr><tr><td class=3D"unitte=
sts-error" colspan=3D"2"><pre>junit.framework.AssertionFailedError: Excepti=
on while testing URL http://localhost:13084/buildtest:java.io.IOException<b=
r>=09at org.springframework.apptests.buildtest.AllTests.testHomePage(Unknow=
n Source)<br>=09at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Meth=
od)<br>=09at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccess=
orImpl.java:39)<br>=09at sun.reflect.DelegatingMethodAccessorImpl.invoke(De=
legatingMethodAccessorImpl.java:25)<br></pre></td></tr><tr><td colspan=3D"2=
"> </td></tr></table><p>
<table width=3D"98%" border=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=
=3D"center"><tr><td colspan=3D"4" class=3D"modifications-sectionheader"> =
Modifications since last build: =
(57) </td></tr><tr class=3D"modifications-evenrow"><td =
class=3D"modifications-data">modified</td><td class=3D"modifications-data">=
luke_t</td><td class=3D"modifications-data">/project.xml</td><td class=3D"m=
odifications-data">Update version to 1.1-dev</td></tr><tr class=3D"modifica=
tions-oddrow"><td class=3D"modifications-data">modified</td><td class=3D"mo=
difications-data">jhoeller</td><td class=3D"modifications-data">/changelog.=
txt</td><td class=3D"modifications-data">added OJB support</td></tr><tr cla=
ss=3D"modifications-evenrow"><td class=3D"modifications-data">modified</td>=
<td class=3D"modifications-data">jhoeller</td><td class=3D"modifications-da=
ta">src/org/springframework/web/servlet/mvc/SimpleFormController.java</td><=
td class=3D"modifications-data">removed onSubmit(command) deprecation</td><=
/tr><tr class=3D"modifications-oddrow"><td class=3D"modifications-data">mod=
ified</td><td class=3D"modifications-data">jhoeller</td><td class=3D"modifi=
cations-data">test/log4j.properties</td><td class=3D"modifications-data">us=
e "rootLogger" instead of "rootCategory"</td></tr><tr class=3D"modification=
s-evenrow"><td class=3D"modifications-data">modified</td><td class=3D"modif=
ications-data">jhoeller</td><td class=3D"modifications-data">/build.xml</td=
><td class=3D"modifications-data">adapted to OJB support</td></tr><tr class=
=3D"modifications-oddrow"><td class=3D"modifications-data">modified</td><td=
class=3D"modifications-data">jhoeller</td><td class=3D"modifications-data"=
>/readme.txt</td><td class=3D"modifications-data">adapted to OJB support</t=
d></tr><tr class=3D"modifications-evenrow"><td class=3D"modifications-data"=
>modified</td><td class=3D"modifications-data">jhoeller</td><td class=3D"mo=
difications-data">lib/readme.txt</td><td class=3D"modifications-data">adapt=
ed to OJB support</td></tr><tr class=3D"modifications-oddrow"><td class=3D"=
modifications-data">modified</td><td class=3D"modifications-data">jhoeller<=
/td><td class=3D"modifications-data">samples/countries/war/WEB-INF/classes/=
log4j.properties</td><td class=3D"modifications-data">polishing</td></tr><t=
r class=3D"modifications-evenrow"><td class=3D"modifications-data">modified=
</td><td class=3D"modifications-data">jhoeller</td><td class=3D"modificatio=
ns-data">samples/countries/build.xml</td><td class=3D"modifications-data">p=
olishing</td></tr><tr class=3D"modifications-oddrow"><td class=3D"modificat=
ions-data">modified</td><td class=3D"modifications-data">jhoeller</td><td c=
lass=3D"modifications-data">samples/jpetstore/build.xml</td><td class=3D"mo=
difications-data">polishing</td></tr><tr class=3D"modifications-evenrow"><t=
d class=3D"modifications-data">added</td><td class=3D"modifications-data">j=
hoeller</td><td class=3D"modifications-data">samples/jpetstore/war/WEB-INF/=
classes/log4j.properties</td><td class=3D"modifications-data">changed from =
log4j.xml to log4j.properties</td></tr><tr class=3D"modifications-oddrow"><=
td class=3D"modifications-data">deleted</td><td class=3D"modifications-data=
">jhoeller</td><td class=3D"modifications-data">samples/jpetstore/war/WEB-I=
NF/classes/log4j.xml</td><td class=3D"modifications-data">changed from log4=
j.xml to log4j.properties</td></tr><tr class=3D"modifications-evenrow"><td =
class=3D"modifications-data">modified</td><td class=3D"modifications-data">=
jhoeller</td><td class=3D"modifications-data">samples/jpetstore/war/WEB-INF=
/web.xml</td><td class=3D"modifications-data">changed from log4j.xml to log=
4j.properties</td></tr><tr class=3D"modifications-oddrow"><td class=3D"modi=
fications-data">deleted</td><td class=3D"modifications-data">jhoeller</td><=
td class=3D"modifications-data">samples/petclinic/war/WEB-INF/classes/log4j=
.properties</td><td class=3D"modifications-data">renamed log4j.properties t=
o log4j.properties.rename because of OJB's logger detection</td></tr><tr cl=
ass=3D"modifications-evenrow"><td class=3D"modifications-data">added</td><t=
d class=3D"modifications-data">jhoeller</td><td class=3D"modifications-data=
">samples/petclinic/war/WEB-INF/classes/log4j.properties.rename</td><td cla=
ss=3D"modifications-data">renamed log4j.properties to log4j.properties.rena=
me because of OJB's logger detection</td></tr><tr class=3D"modifications-od=
drow"><td class=3D"modifications-data">modified</td><td class=3D"modificati=
ons-data">jhoeller</td><td class=3D"modifications-data">samples/petclinic/b=
uild.xml</td><td class=3D"modifications-data">added OJB data access layer t=
o Petclinic</td></tr><tr class=3D"modifications-evenrow"><td class=3D"modif=
ications-data">modified</td><td class=3D"modifications-data">jhoeller</td><=
td class=3D"modifications-data">samples/petclinic/readme.txt</td><td class=
=3D"modifications-data">added OJB data access layer to Petclinic</td></tr><=
tr class=3D"modifications-oddrow"><td class=3D"modifications-data">added</t=
d><td class=3D"modifications-data">jhoeller</td><td class=3D"modifications-=
data">samples/petclinic/war/WEB-INF/applicationContext-ojb.xml</td><td clas=
s=3D"modifications-data">added OJB data access layer to Petclinic</td></tr>=
<tr class=3D"modifications-evenrow"><td class=3D"modifications-data">modifi=
ed</td><td class=3D"modifications-data">jhoeller</td><td class=3D"modificat=
ions-data">samples/petclinic/war/WEB-INF/jdbc.properties</td><td class=3D"m=
odifications-data">added OJB data access layer to Petclinic</td></tr><tr cl=
ass=3D"modifications-oddrow"><td class=3D"modifications-data">modified</td>=
<td class=3D"modifications-data">jhoeller</td><td class=3D"modifications-da=
ta">samples/petclinic/war/WEB-INF/web.xml</td><td class=3D"modifications-da=
ta">added OJB data access layer to Petclinic</td></tr><tr class=3D"modifica=
tions-evenrow"><td class=3D"modifications-data">added</td><td class=3D"modi=
fications-data">jhoeller</td><td class=3D"modifications-data">samples/petcl=
inic/src/OJB-repository.xml</td><td class=3D"modifications-data">added OJB =
data access layer to Petclinic</td></tr><tr class=3D"modifications-oddrow">=
<td class=3D"modifications-data">added</td><td class=3D"modifications-data"=
>jhoeller</td><td class=3D"modifications-data">samples/petclinic/src/OJB.pr=
operties</td><td class=3D"modifications-data">added OJB data access layer t=
o Petclinic</td></tr><tr class=3D"modifications-evenrow"><td class=3D"modif=
ications-data">modified</td><td class=3D"modifications-data">jhoeller</td><=
td class=3D"modifications-data">samples/petclinic/src/org/springframework/s=
amples/petclinic/web/FindOwnersForm.java</td><td class=3D"modifications-dat=
a">Collection instead of List from Clinic</td></tr><tr class=3D"modificatio=
ns-oddrow"><td class=3D"modifications-data">modified</td><td class=3D"modif=
ications-data">jhoeller</td><td class=3D"modifications-data">samples/petcli=
nic/src/org/springframework/samples/petclinic/web/AbstractClinicForm.java</=
td><td class=3D"modifications-data">polishing</td></tr><tr class=3D"modific=
ations-evenrow"><td class=3D"modifications-data">modified</td><td class=3D"=
modifications-data">jhoeller</td><td class=3D"modifications-data">samples/p=
etclinic/test/org/springframework/samples/petclinic/jdbc/JdbcClinicTests.ja=
va</td><td class=3D"modifications-data">polishing</td></tr><tr class=3D"mod=
ifications-oddrow"><td class=3D"modifications-data">modified</td><td class=
=3D"modifications-data">jhoeller</td><td class=3D"modifications-data">sampl=
es/petclinic/test/org/springframework/samples/petclinic/jdbc/applicationCon=
text-jdbc.xml</td><td class=3D"modifications-data">polishing</td></tr><tr c=
lass=3D"modifications-evenrow"><td class=3D"modifications-data">modified</t=
d><td class=3D"modifications-data">jhoeller</td><td class=3D"modifications-=
data">samples/petclinic/test/org/springframework/samples/petclinic/Abstract=
ClinicTests.java</td><td class=3D"modifications-data">polishing</td></tr><t=
r class=3D"modifications-oddrow"><td class=3D"modifications-data">modified<=
/td><td class=3D"modifications-data">jhoeller</td><td class=3D"modification=
s-data">samples/petclinic/test/org/springframework/samples/petclinic/hibern=
ate/HibernateClinicTests.java</td><td class=3D"modifications-data">polishin=
g</td></tr><tr class=3D"modifications-evenrow"><td class=3D"modifications-d=
ata">modified</td><td class=3D"modifications-data">jhoeller</td><td class=
=3D"modifications-data">samples/petclinic/src/org/springframework/samples/p=
etclinic/Clinic.java</td><td class=3D"modifications-data">changed id type t=
o int</td></tr><tr class=3D"modifications-oddrow"><td class=3D"modification=
s-data">modified</td><td class=3D"modifications-data">jhoeller</td><td clas=
s=3D"modifications-data">samples/petclinic/src/org/springframework/samples/=
petclinic/Entity.java</td><td class=3D"modifications-data">changed id type =
to int</td></tr><tr class=3D"modifications-evenrow"><td class=3D"modificati=
ons-data">modified</td><td class=3D"modifications-data">jhoeller</td><td cl=
ass=3D"modifications-data">samples/petclinic/src/org/springframework/sample=
s/petclinic/Owner.java</td><td class=3D"modifications-data">changed id type=
to int</td></tr><tr class=3D"modifications-oddrow"><td class=3D"modificati=
ons-data">modified</td><td class=3D"modifications-data">jhoeller</td><td cl=
ass=3D"modifications-data">samples/petclinic/src/org/springframework/sample=
s/petclinic/Person.java</td><td class=3D"modifications-data">changed id typ=
e to int</td></tr><tr class=3D"modifications-evenrow"><td class=3D"modifica=
tions-data">modified</td><td class=3D"modifications-data">jhoeller</td><td =
class=3D"modifications-data">samples/petclinic/src/org/springframework/samp=
les/petclinic/Pet.java</td><td class=3D"modifications-data">changed id type=
to int</td></tr><tr class=3D"modifications-oddrow"><td class=3D"modificati=
ons-data">modified</td><td class=3D"modifications-data">jhoeller</td><td cl=
ass=3D"modifications-data">samples/petclinic/src/org/springframework/sample=
s/petclinic/Vet.java</td><td class=3D"modifications-data">changed id type t=
o int</td></tr><tr class=3D"modifications-evenrow"><td class=3D"modificatio=
ns-data">modified</td><td class=3D"modifications-data">jhoeller</td><td cla=
ss=3D"modifications-data">samples/petclinic/src/org/springframework/samples=
/petclinic/jdbc/AbstractJdbcClinic.java</td><td class=3D"modifications-data=
">changed id type to int</td></tr><tr class=3D"modifications-oddrow"><td cl=
ass=3D"modifications-data">modified</td><td class=3D"modifications-data">jh=
oeller</td><td class=3D"modifications-data">samples/petclinic/src/org/sprin=
gframework/samples/petclinic/jdbc/JdbcPet.java</td><td class=3D"modificatio=
ns-data">changed id type to int</td></tr><tr class=3D"modifications-evenrow=
"><td class=3D"modifications-data">modified</td><td class=3D"modifications-=
data">jhoeller</td><td class=3D"modifications-data">samples/petclinic/src/o=
rg/springframework/samples/petclinic/hibernate/HibernateClinic.java</td><td=
class=3D"modifications-data">moved petclinic.hbm.xml to root of classpath<=
/td></tr><tr class=3D"modifications-oddrow"><td class=3D"modifications-data=
">deleted</td><td class=3D"modifications-data">jhoeller</td><td class=3D"mo=
difications-data">samples/petclinic/src/org/springframework/samples/petclin=
ic/hibernate/petclinic.hbm.xml</td><td class=3D"modifications-data">moved p=
etclinic.hbm.xml to root of classpath</td></tr><tr class=3D"modifications-e=
venrow"><td class=3D"modifications-data">modified</td><td class=3D"modifica=
tions-data">jhoeller</td><td class=3D"modifications-data">samples/petclinic=
/war/WEB-INF/applicationContext-hibernate.xml</td><td class=3D"modification=
s-data">moved petclinic.hbm.xml to root of classpath</td></tr><tr class=3D"=
modifications-oddrow"><td class=3D"modifications-data">modified</td><td cla=
ss=3D"modifications-data">jhoeller</td><td class=3D"modifications-data">sam=
ples/petclinic/test/org/springframework/samples/petclinic/hibernate/applica=
tionContext-hibernate.xml</td><td class=3D"modifications-data">moved petcli=
nic.hbm.xml to root of classpath</td></tr><tr class=3D"modifications-evenro=
w"><td class=3D"modifications-data">added</td><td class=3D"modifications-da=
ta">jhoeller</td><td class=3D"modifications-data">samples/petclinic/src/pet=
clinic.hbm.xml</td><td class=3D"modifications-data">moved petclinic.hbm.xml=
to root of classpath</td></tr><tr class=3D"modifications-oddrow"><td class=
=3D"modifications-data">modified</td><td class=3D"modifications-data">jhoel=
ler</td><td class=3D"modifications-data">src/org/springframework/ejb/access=
/AbstractRemoteSlsbInvokerInterceptor.java</td><td class=3D"modifications-d=
ata">added proxy type checks, refined logging</td></tr><tr class=3D"modific=
ations-evenrow"><td class=3D"modifications-data">modified</td><td class=3D"=
modifications-data">jhoeller</td><td class=3D"modifications-data">src/org/s=
pringframework/ejb/access/LocalSlsbInvokerInterceptor.java</td><td class=3D=
"modifications-data">added proxy type checks, refined logging</td></tr><tr =
class=3D"modifications-oddrow"><td class=3D"modifications-data">modified</t=
d><td class=3D"modifications-data">jhoeller</td><td class=3D"modifications-=
data">src/org/springframework/ejb/access/SimpleRemoteSlsbInvokerInterceptor=
.java</td><td class=3D"modifications-data">added proxy type checks, refined=
logging</td></tr><tr class=3D"modifications-evenrow"><td class=3D"modifica=
tions-data">modified</td><td class=3D"modifications-data">jhoeller</td><td =
class=3D"modifications-data">src/org/springframework/jdbc/datasource/Driver=
ManagerDataSource.java</td><td class=3D"modifications-data">changed log lev=
el from INFO to DEBUG</td></tr><tr class=3D"modifications-oddrow"><td class=
=3D"modifications-data">modified</td><td class=3D"modifications-data">johns=
onr</td><td class=3D"modifications-data">src/org/springframework/transactio=
n/interceptor/TransactionAspectSupport.java</td><td class=3D"modifications-=
data">Renamed doAfterFinallyOnReturning() doCommitTransactionAfterReturning=
()</td></tr><tr class=3D"modifications-evenrow"><td class=3D"modifications-=
data">modified</td><td class=3D"modifications-data">johnsonr</td><td class=
=3D"modifications-data">src/org/springframework/transaction/interceptor/Tra=
nsactionInterceptor.java</td><td class=3D"modifications-data">Renamed doAft=
erFinallyOnReturning() doCommitTransactionAfterReturning()</td></tr><tr cla=
ss=3D"modifications-oddrow"><td class=3D"modifications-data">modified</td><=
td class=3D"modifications-data">johnsonr</td><td class=3D"modifications-dat=
a">src/org/springframework/transaction/interceptor/TransactionInterceptor.j=
ava</td><td class=3D"modifications-data">Removed unnecessary if (txInfo !=
=3D null) check</td></tr><tr class=3D"modifications-evenrow"><td class=3D"m=
odifications-data">modified</td><td class=3D"modifications-data">markpollac=
k</td><td class=3D"modifications-data">sandbox/test/org/springframework/jms=
/JmsSender102Tests.java</td><td class=3D"modifications-data">add JmsSenderC=
allback support</td></tr><tr class=3D"modifications-oddrow"><td class=3D"mo=
difications-data">modified</td><td class=3D"modifications-data">markpollack=
</td><td class=3D"modifications-data">sandbox/src/org/springframework/jms/J=
msSender102.java</td><td class=3D"modifications-data">add JmsSenderCallback=
support</td></tr><tr class=3D"modifications-evenrow"><td class=3D"modifica=
tions-data">modified</td><td class=3D"modifications-data">markpollack</td><=
td class=3D"modifications-data">sandbox/src/org/springframework/jms/JmsSend=
er102.java</td><td class=3D"modifications-data">fix type the prevented comp=
ilation.</td></tr><tr class=3D"modifications-oddrow"><td class=3D"modificat=
ions-data">modified</td><td class=3D"modifications-data">markpollack</td><t=
d class=3D"modifications-data">sandbox/src/org/springframework/jms/Abstract=
JmsSender.java</td><td class=3D"modifications-data">add converter set metho=
d.</td></tr><tr class=3D"modifications-evenrow"><td class=3D"modifications-=
data">modified</td><td class=3D"modifications-data">colins</td><td class=3D=
"modifications-data">test/org/springframework/aop/framework/autoproxy/metad=
ata/AbstractMetadataAutoProxyTests.java</td><td class=3D"modifications-data=
">typo</td></tr><tr class=3D"modifications-oddrow"><td class=3D"modificatio=
ns-data">modified</td><td class=3D"modifications-data">luke_t</td><td class=
=3D"modifications-data">/project.properties</td><td class=3D"modifications-=
data">Removed aopalliance jar override. Added ojb dependency. Changed cglib=
artifact name to cglib-full</td></tr><tr class=3D"modifications-evenrow"><=
td class=3D"modifications-data">modified</td><td class=3D"modifications-dat=
a">luke_t</td><td class=3D"modifications-data">/project.xml</td><td class=
=3D"modifications-data">Removed aopalliance jar override. Added ojb depende=
ncy. Changed cglib artifact name to cglib-full</td></tr><tr class=3D"modifi=
cations-oddrow"><td class=3D"modifications-data">added</td><td class=3D"mod=
ifications-data">colins</td><td class=3D"modifications-data">test/org.sprin=
gframework.test.marker</td><td class=3D"modifications-data">make CommonsAtt=
ributeCompilerUtils non-location specific</td></tr><tr class=3D"modificatio=
ns-evenrow"><td class=3D"modifications-data">modified</td><td class=3D"modi=
fications-data">colins</td><td class=3D"modifications-data">test/org/spring=
framework/metadata/commons/CommonsAttributeCompilerUtils.java</td><td class=
=3D"modifications-data">make CommonsAttributeCompilerUtils non-location spe=
cific</td></tr></table><p>
<table width=3D"98%" border=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=
=3D"center"><tr><td class=3D"distributables-sectionheader"> =
Deployments by this build: (8) </td><=
/tr><tr><td class=3D"distributables-data">Building jar: /jteam/build/checko=
ut/spring/spring/dist/spring.jar</td></tr><tr class=3D"distributables-oddro=
w"><td class=3D"distributables-data">Building war: /jteam/build/checkout/sp=
ring/spring/autobuilds/apps/buildtest/dist/buildtest.war</td></tr><tr><td c=
lass=3D"distributables-data">Building war: /jteam/build/checkout/spring/spr=
ing/autobuilds/apps/buildtest/dist/buildtest.war</td></tr><tr class=3D"dist=
ributables-oddrow"><td class=3D"distributables-data">Building war: /jteam/b=
uild/checkout/spring/spring/autobuilds/apps/buildtest/dist/buildtest.war</t=
d></tr><tr><td class=3D"distributables-data">Building jar: /jteam/build/che=
ckout/spring/spring/autobuilds/apps/jpetstore/war/WEB-INF/lib/jpetstore.jar=
</td></tr><tr class=3D"distributables-oddrow"><td class=3D"distributables-d=
ata">Building war: /jteam/build/checkout/spring/spring/autobuilds/apps/jpet=
store/dist/jpetstore.war</td></tr><tr><td class=3D"distributables-data">Bui=
lding jar: /jteam/build/checkout/spring/spring/autobuilds/apps/jpetstore/wa=
r/WEB-INF/lib/jpetstore.jar</td></tr><tr class=3D"distributables-oddrow"><t=
d class=3D"distributables-data">Building war: /jteam/build/checkout/spring/=
spring/autobuilds/apps/jpetstore/dist/jpetstore.war</td></tr></table>
</body></html> |
|
From: <jue...@we...> - 2004-07-06 20:45:14
|
Essentially, I recommend to avoid OpenSessionInViewFilter as far as = possible, sticking to per-transaction Sessions. In that case, your = strategy of catching OptimisticLockingFailureException and retrying will = work without any issues, in a natural fashion. This is how transactions = usually behave in Spring: The Session will be closed at transaction = completion. OpenSessionInViewFilter breaks that principle for the sake = of using a single Session for the entire request; this is a tradeoff = that the application developer can choose. =20 The central problem is that safely relying on the classic Open Session = in View pattern for lazy loading in the view requires that *all* data = access operations have been performed on the single Session. If you = discard the Session mid-way and bind a new one, objects that have been = loaded by the first Session and end up in the model for the view (for = example, some reference data) will *not* be able to lazily load data = anymore. While this may work in some cases, it is not generally = reliable. =20 To get both transaction-scoped Sessions *and* lazy loading in views, we = would need to provide a different mechanism. For example, we could = register all transactional Sessions to be closed at request completion: = Each transaction would work with its own Session; the difference is that = those Sessions will not be closed at transaction completion but rather = at request completion, to allow for lazy loading. This requires = implementing a new mechanism that gathers those Sessions, without tying = HibernateTransactionManager to web concepts: not trivial, but possible. =20 Note that the whole problem wouldn't exist if Hibernate would not tie = lazy loading in persistent objects to the original Session that loaded = them. As a counterexample, take OJB: Lazy loading simply fetches a new = JDBC Connection there if the original PersistenceBroker is already = closed. There is no need for an Open PersistenceBroker in View pattern = in the first place! JDO requires the PersistenceManager to still be = open, like Hibernate, but can at least correctly reset objects in case = of a transaction rollback (it rolls back *object state* too, not just = database state), not needing to discard the PersistenceBroker in that = case. =20 Juergen =20 ________________________________ Von: spr...@li... im Auftrag = von Chris Richardson Gesendet: Di 06.07.2004 22:01 An: spr...@li... Betreff: Re: [Springframework-developer] OpenSessionInViewFilter ideas On Thu, 24 Jun 2004 18:03:56 -0700, Norris, Tyson <tys...@be...> wrote: > Hi Folks - > We have been running into problems with migrating an existing CMT EJB > application to use OpenSessionInViewFilter, and here are a couple > thoughts on the subject. > > The basic problem is that when a session is created, then a = transaction > is initiated and uses that session, if the transaction rolls back, how > can we still access the initial session created in the filter? > > Currently the same session is used after entering the transaction. = This > is a problem for us using weblogic, since weblogic datasource become > useless after a transaction rolls back (or commits), but I think this = is > also general practice for hibernate users to close the session on > rollback: > "If you rollback the transaction you should immediately close and > discard the current session to ensure that Hibernate's internal state = is > consistent." > > So, what to do? Would it be desirable to build into = SessionFactoryUtils > the ability to generate a new session for each new transaction? > This functionality would be very useful. In my application I want to rollback and retry the transaction if an optimistic locking failure occurs, i.e Hibernate throws a StaleObjectStateException. I have an interceptor that runs before the TransactionInterceptor that catches the OptimisticLockingFailureException and redoes the call. It needs to close the existing Session and open a new one. I wrote some code that does an TransactionSynchronizationManager.unbindResource() following be a close, an open and then a bindResource(). It appears to work but it would be nice if this was handled by SessionFactoryUtils Chris ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: Chris R. <chr...@gm...> - 2004-07-06 20:02:00
|
On Thu, 24 Jun 2004 18:03:56 -0700, Norris, Tyson <tys...@be...> wrote: > Hi Folks - > We have been running into problems with migrating an existing CMT EJB > application to use OpenSessionInViewFilter, and here are a couple > thoughts on the subject. > > The basic problem is that when a session is created, then a transaction > is initiated and uses that session, if the transaction rolls back, how > can we still access the initial session created in the filter? > > Currently the same session is used after entering the transaction. This > is a problem for us using weblogic, since weblogic datasource become > useless after a transaction rolls back (or commits), but I think this is > also general practice for hibernate users to close the session on > rollback: > "If you rollback the transaction you should immediately close and > discard the current session to ensure that Hibernate's internal state is > consistent." > > So, what to do? Would it be desirable to build into SessionFactoryUtils > the ability to generate a new session for each new transaction? > This functionality would be very useful. In my application I want to rollback and retry the transaction if an optimistic locking failure occurs, i.e Hibernate throws a StaleObjectStateException. I have an interceptor that runs before the TransactionInterceptor that catches the OptimisticLockingFailureException and redoes the call. It needs to close the existing Session and open a new one. I wrote some code that does an TransactionSynchronizationManager.unbindResource() following be a close, an open and then a bindResource(). It appears to work but it would be nice if this was handled by SessionFactoryUtils Chris |
|
From: <jue...@we...> - 2004-07-06 15:28:01
|
Done! Petclinic should work nicely again, including build scripts etc. = Everybody who's interested, please check the OJB support and the new = Petclinic version out. Petclinic still runs on Hibernate by default, but = can easily be switched to OJB or JDBC by adapting the = "contextConfigLocation" context-param in web.xml (simple switch the = comment). =20 BTW, I'm also in contact with some of the OJB developers, suggesting = some configuration improvements for OJB 1.1. =20 Juergen =20 ________________________________ Von: spr...@li... im Auftrag = von j=FCrgen h=F6ller [werk3AT] Gesendet: Mo 05.07.2004 14:17 An: spr...@li... Betreff: Re: [Springframework-developer] OJB support Haven't had much time yesterday evening; gonna go through the reworked = Petclinic tonight, having it committed by tomorrow morning. Works nicely, so far: Switching between Hibernate, OJB's = PersistenceBroker and JDBC is just a change in web.xml's = "contextConfigLocation - on the exact same data model! OJB's PersistenceBroker is actually a good fit for Petclinic's data = access needs: nice mapping capabilities, but no automatic change = detection (which Petclinic doesn't need anyway). Juergen -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of j=FCrgen h=F6ller [werk3AT] Sent: Sunday, July 04, 2004 3:34 PM To: spr...@li... Subject: Re: [Springframework-developer] OJB support I've just finished Petclinic's data access layer: took just about 4 = hours, mainly to get the entity relationship mappings right. I've also = retested that Petclinic still runs nicely on Hibernate, OJB and JDBC - = with the exact same data model. I'll commit the reworked Petclinic = tonight. Juergen ________________________________ Von: spr...@li... im Auftrag = von j=FCrgen h=F6ller [werk3AT] Gesendet: Sa 03.07.2004 12:58 An: spr...@li... Betreff: Re: [Springframework-developer] OJB support I've just finished all remaining OJB support infrastructure features: = PersistenceBrokerTransactionManager can expose JDBC transactions now, = there's a PersistenceBrokerDaoSupport class, and there's a = LocalDataSourceConnectionFactory helper that allows to use a = Spring-managed DataSource bean as OJB connection factory. LocalDataSourceConnectionFactory works with a static field, which is = clearly not ideal but forced by OJB's static initializer model. The OJB = guys told me that they are gonna address this for OJB 1.1, so the = current implementation is hopefully just an intermediate solution. Note that an "Open PersistenceBroker in View" pattern is not necessary = with OJB: It simply fetches a new Connection for lazy loading rather = than depending on the original PersistenceBroker still being open. I've = not actually tested this, but it was pointed out in the TSS thread. I'll provide an OJB data access implementation for Petclinic in the = course of this weekend, as an example for OJB PersistenceBroker = integration. I don't assume that this is more than 4 hours of work. I'll = also verify the lazy loading assumptions there. Furthermore, I'll = provide a test suite for the OJB support in the course of next week. The only further JAR that we need to ship for building the OJB = integration and running the sample should be db-ojb-1.0.0 jar (~800 KB). = I guess that's OK for the -with-dependencies download. It is certainly = desirable to show that we support OJB out-of-the-box just like = Hibernate. Early feedback welcome :-) Juergen ________________________________ Von: spr...@li... im Auftrag = von j=FCrgen h=F6ller [werk3AT] Gesendet: Fr 02.07.2004 21:02 An: spr...@li... Betreff: [Springframework-developer] OJB support Hi everybody, On the occasion of the recent TSS thread on OJB 1.0 final, I've decided = to give OJB PersistenceBroker integration a go. I've already committed = the initial bunch a couple of hours ago, providing = PersistenceBrokerTemplate, PersistenceBrokerTransactionManager, etc. This initial stuff took just about 4 hours, including getting OJB to = work with a simple example! I was pleasantly surprised by how easy OJB = is to set up. I'm not fond really fond of its static initializer model, = but it does work and is simple enough to get going. I'm currently working on support for exposing the JDBC Connection in = PersistenceBrokerTransactionManager and other refinements. I plan to add = a Petclinic data access version for OJB this weekend: As far as I can = judge at this point of time, this should be simple enough to do. One of the distinct characteristics of OJB's PersistenceBroker is that = it offers all of OJB's mapping and querying capabilities, but does not = attempt to provide object-level transactions, i.e. does not do automatic = change detection but rather rely on explicit store calls. For = Petclinic-style web apps, this is more than enough. The stuff in CVS does work already, so whoever's interested, feel free = to have a look at it :-) Juergen ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: Mason, R. <ros...@vi...> - 2004-07-06 13:41:28
|
R29vZCBwb2ludCwgSSdsbCByZW5hbWUgdGhlIGphciB0byBzcHJpbmctMS4xLWRldi5qYXIuDQog DQpDaGVlcnMsDQogDQpSb3NzDQoNCgktLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLSANCglGcm9t OiBzcHJpbmdmcmFtZXdvcmstZGV2ZWxvcGVyLWFkbWluQGxpc3RzLnNvdXJjZWZvcmdlLm5ldCBv biBiZWhhbGYgb2YgQ29saW4gU2FtcGFsZWFudSANCglTZW50OiBUdWUgNi8wNy8yMDA0IDE6MjUg UE0gDQoJVG86IHNwcmluZ2ZyYW1ld29yay1kZXZlbG9wZXJAbGlzdHMuc291cmNlZm9yZ2UubmV0 IA0KCUNjOiANCglTdWJqZWN0OiBSZTogW1NwcmluZ2ZyYW1ld29yay1kZXZlbG9wZXJdIEFwcGxp Y2F0aW9uRXZlbnRNdWx0aWNhc3Rlcg0KCQ0KCQ0KDQoJSSBkb24ndCB0aGluayB0aGVyZSBhcmUg YW55IHByb2JsZW1zIHdpdGggeW91IHB1dHRpbmcgdGhlIGphcnMgb24gdGhlDQoJY3ViaXMgcmVw bywgYXMgbG9uZyBhcyBwZW9wbGUgdW5kZXJzdGFuZCAoYW5kIEkgdGhpbmsgdGhleSBkbykgdGhh dA0KCXRoZXNlIGFyZSBDVlMgc25hcHNob3RzLCBzbyB0aGVyZSBpcyBwb3RlbnRpYWwgYnJlYWth Z2UuIE9mIGNvdXJzZSBnaXZlbg0KCVNwcmluZydzIGNvZGUgYW5kIHRlc3QgcXVhbGl0eSB0aGlz IGlzIHByZXR0eSByYXJlLg0KCQ0KCUJ1dCBJJ20gbm90IHN1cmUgSSdkIGNhbGwgc29tZXRoaW5n IHRoYXQgaXMgcG9zdCAxLjAuMiwNCglzcHJpbmctMS4wLjItZGV2Lmphci4gSSd2ZSBhbHdheXMg dGhvdWdodCB0aGUgY29udmVudGlvbiB3YXMgdG8gdGFjaw0KCS1kZXYgb24gdGhlIF9uZXh0XyB2 ZXJzaW9uIG51bWJlciwgc28gdGhpcyBzaG91bGQgYmUgc3ByaW5nLTEuMS1kZXYuamFyDQoJKHNp bmNlIHRoZXJlIGlzIG5vIDEuMC4zIHBsYW5uZWQpLiBJJ3ZlIGFsc28gaW4gdGhlIHBhc3QgdXNl ZCBhDQoJY29udmVudGlvbiBJIGhhdmVuJ3Qgc2VlbiBhbnl3aGVyZSBlbHNlLCBhZGRpbmcgJ3Bv c3QnLCBlLmcuDQoJc3ByaW5nLTEuMC4yLXBvc3QuamFyLg0KCQ0KCUNvbGluDQoJDQoJTWFzb24s IFJvc3Mgd3JvdGU6DQoJDQoJPkhpIFNlYW4sDQoJPg0KCT5UbyB1c2Ugc3ByaW5nIGV2ZW50cyBh bmQgTXVsZSB5b3UnbGwgbmVlZCB0aGUgbGF0ZXN0IE11bGUgamFyIChtdWxlLTAuOS4xLWRldi5q YXIpIGFuZCBhDQoJPlNwcmluZyBkZXYgamFyIGNhbGxlZCBzcHJpbmctMS4wLjItZGV2Lmphci4g IFRoZXNlIGFyZSBib3RoIGF2YWlsYWJsZSBpbiBodHRwOi8vd3d3LmN1YmlzLmNvLnVrL3JlcG9z aXRvcnkvDQoJPg0KCT5TcHJpbmcgR3V5czogZG8geW91IG1pbmQgaWYgSSBwdWJsaXNoIGRldiBz cHJpbmcgamFycyBpbiB0aGUgY3ViaXMgcmVwb3NpdG9yeT8NCgk+DQoJPkknbSBub3QgdGhhdCBj bG9zZSB0byBmaW5pc2hpbmcgdGhlIGRlbW8gYXBwLCBidXQgeW91IGNhbiBzZWUgdGhlIFNwcmlu ZyBFdmVudCB0ZXN0Y2FzZXMgaW4gdGhlIG11bGUtZXh0cmFzIGN2cyBtb2R1bGUNCgk+DQoJPmh0 dHA6Ly9jdnMuc291cmNlZm9yZ2UubmV0L3ZpZXdjdnMucHkvbXVsZS9tdWxlLWV4dHJhcy9zcHJp bmcvc3JjL3Rlc3Qvb3JnL211bGUvZXh0cmFzL3NwcmluZy9ldmVudHMvDQoJPg0KCT5BcyBmb3Ig YSBKYWJiZXIgcHJvdmlkZXIgcG9zdCBvbiBtYWlsdG86bXVsZS1kZXZlbG9wZXJAbGlzdHMuc291 cmNlZm9yZ2UubmV0LCBzb21lIG9uZSB0aGVyZSBtaWdodCBoYXZlIHNvbWV0aGluZyBvdGhlcndp c2UgaXQncyBwcmV0dHkgc3RyYWlnaHQgZm9yd2FyZCB0byB3cml0ZSB5b3VyIG93bi4NCgk+DQoJ PkNoZWVycywNCgk+DQoJPlJvc3MNCgk+DQoJPiANCgk+DQoJPj4tLS0tLU9yaWdpbmFsIE1lc3Nh Z2UtLS0tLQ0KCT4+RnJvbTogc3ByaW5nZnJhbWV3b3JrLWRldmVsb3Blci1hZG1pbkBsaXN0cy5z b3VyY2Vmb3JnZS5uZXQNCgk+PlttYWlsdG86c3ByaW5nZnJhbWV3b3JrLWRldmVsb3Blci1hZG1p bkBsaXN0cy5zb3VyY2Vmb3JnZS5uZXRdT24gQmVoYWxmDQoJPj5PZiBza3JvYWhAZmVkZXguY29t DQoJPj5TZW50OiBUdWVzZGF5LCA2IEp1bHkgMjAwNCAxMjowOCBBTQ0KCT4+VG86IHNwcmluZ2Zy YW1ld29yay1kZXZlbG9wZXJAbGlzdHMuc291cmNlZm9yZ2UubmV0DQoJPj5TdWJqZWN0OiBSRTog W1NwcmluZ2ZyYW1ld29yay1kZXZlbG9wZXJdIEFwcGxpY2F0aW9uRXZlbnRNdWx0aWNhc3Rlcg0K CT4+DQoJPj4NCgk+PiAgIA0KCT4+DQoJPj4+PlJvc3MgTWFzb24gd3JvdGUNCgk+Pj4+VGhlIGNo YW5nZXMgeW91IG1hZGUgd29ya2VkIG91dCB2ZXJ5IHdlbGwuIEkndmUgbm93IGdvdA0KCT4+Pj4g ICAgICAgDQoJPj4+Pg0KCT4+U3ByaW5nIHJlY2VpdmluZw0KCT4+YW5kIHB1Ymxpc2hpbmcgTXVs ZSBldmVudHMgdGhyb3VnaCB0aGUgY29udGV4dCBhbmQgaXQgZXZlbg0KCT4+c3VwcG9ydHMgZXZl bnQNCgk+PiAgIA0KCT4+DQoJPj4+PnN1YnNjcmlwdGlvbnMgZnJvbSBzcHJpbmcgYmVhbnMuICBJ J20gcHV0dGluZyBhIGRlbW8gYXBwDQoJPj4+PiAgICAgICANCgk+Pj4+DQoJPj50b2dldGhlciBh dCB0aGUNCgk+Pm1vbWVudC4NCgk+Pg0KCT4+Um9zcyBjYW4geW91IGxldCB0aGUgbGlzdCBrbm93 IHdoZW4geW91ciBkb25lIHdpdGggeW91ciBkZW1vDQoJPj5hcHAgYW5kIHdoYXQNCgk+PmRlcGVu ZGVuY2llcywgU3ByaW5nIGFuZCBNdWxlLCB0aGF0IGFyZSByZXF1aXJlZCB0byBydW4gaXQuIFRo aXMgc291bmRzDQoJPj5saWtlIHNvbWV0aGluZyB0aGF0IHdpbGwgYmUgdXNlZnVsIHRvIG1lLiBB bHNvIG9mZiB0b3BpYyBidXQgaXMgYW55b25lDQoJPj53b3JraW5nIG9uIGEgbXVsZSB0byBKYWJi ZXIgY29tcG9uZW50Pw0KCT4+DQoJPj4NCgk+PlNlYW4gS3JvYWgNCgk+Pg0KCT4+DQoJPj4NCgk+ Pg0KCT4+LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQ0KCT4+VGhpcyBTRi5OZXQgZW1haWwgc3BvbnNvcmVkIGJ5IEJsYWNrIEhhdCBCcmllZmlu Z3MgJiBUcmFpbmluZy4NCgk+PkF0dGVuZCBCbGFjayBIYXQgQnJpZWZpbmdzICYgVHJhaW5pbmcs IExhcyBWZWdhcyBKdWx5IDI0LTI5IC0NCgk+PmRpZ2l0YWwgc2VsZiBkZWZlbnNlLCB0b3AgdGVj aG5pY2FsIGV4cGVydHMsIG5vIHZlbmRvciBwaXRjaGVzLA0KCT4+dW5tYXRjaGVkIG5ldHdvcmtp bmcgb3Bwb3J0dW5pdGllcy4gVmlzaXQgd3d3LmJsYWNraGF0LmNvbQ0KCT4+X19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCgk+PlNwcmluZ2ZyYW1ld29yay1k ZXZlbG9wZXIgbWFpbGluZyBsaXN0DQoJPj5TcHJpbmdmcmFtZXdvcmstZGV2ZWxvcGVyQGxpc3Rz LnNvdXJjZWZvcmdlLm5ldA0KCT4+aHR0cHM6Ly9saXN0cy5zb3VyY2Vmb3JnZS5uZXQvbGlzdHMv bGlzdGluZm8vc3ByaW5nZnJhbWV3b3JrLWRldmVsb3Blcg0KCT4+DQoJPj4gICANCgk+Pg0KCT4N Cgk+DQoJPi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0NCgk+VGhpcyBTRi5OZXQgZW1haWwgc3BvbnNvcmVkIGJ5IEJsYWNrIEhhdCBCcmllZmlu Z3MgJiBUcmFpbmluZy4NCgk+QXR0ZW5kIEJsYWNrIEhhdCBCcmllZmluZ3MgJiBUcmFpbmluZywg TGFzIFZlZ2FzIEp1bHkgMjQtMjkgLQ0KCT5kaWdpdGFsIHNlbGYgZGVmZW5zZSwgdG9wIHRlY2hu aWNhbCBleHBlcnRzLCBubyB2ZW5kb3IgcGl0Y2hlcywNCgk+dW5tYXRjaGVkIG5ldHdvcmtpbmcg b3Bwb3J0dW5pdGllcy4gVmlzaXQgd3d3LmJsYWNraGF0LmNvbQ0KCT5fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0KCT5TcHJpbmdmcmFtZXdvcmstZGV2ZWxv cGVyIG1haWxpbmcgbGlzdA0KCT5TcHJpbmdmcmFtZXdvcmstZGV2ZWxvcGVyQGxpc3RzLnNvdXJj ZWZvcmdlLm5ldA0KCT5odHRwczovL2xpc3RzLnNvdXJjZWZvcmdlLm5ldC9saXN0cy9saXN0aW5m by9zcHJpbmdmcmFtZXdvcmstZGV2ZWxvcGVyDQoJPiANCgk+DQoJDQoJDQoJDQoJDQoJLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KCVRoaXMg U0YuTmV0IGVtYWlsIHNwb25zb3JlZCBieSBCbGFjayBIYXQgQnJpZWZpbmdzICYgVHJhaW5pbmcu DQoJQXR0ZW5kIEJsYWNrIEhhdCBCcmllZmluZ3MgJiBUcmFpbmluZywgTGFzIFZlZ2FzIEp1bHkg MjQtMjkgLQ0KCWRpZ2l0YWwgc2VsZiBkZWZlbnNlLCB0b3AgdGVjaG5pY2FsIGV4cGVydHMsIG5v IHZlbmRvciBwaXRjaGVzLA0KCXVubWF0Y2hlZCBuZXR3b3JraW5nIG9wcG9ydHVuaXRpZXMuIFZp c2l0IHd3dy5ibGFja2hhdC5jb20NCglfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXw0KCVNwcmluZ2ZyYW1ld29yay1kZXZlbG9wZXIgbWFpbGluZyBsaXN0DQoJ U3ByaW5nZnJhbWV3b3JrLWRldmVsb3BlckBsaXN0cy5zb3VyY2Vmb3JnZS5uZXQNCglodHRwczov L2xpc3RzLnNvdXJjZWZvcmdlLm5ldC9saXN0cy9saXN0aW5mby9zcHJpbmdmcmFtZXdvcmstZGV2 ZWxvcGVyDQoJDQoNCg== |
|
From: Colin S. <col...@ex...> - 2004-07-06 12:21:03
|
I don't think there are any problems with you putting the jars on the cubis repo, as long as people understand (and I think they do) that these are CVS snapshots, so there is potential breakage. Of course given Spring's code and test quality this is pretty rare. But I'm not sure I'd call something that is post 1.0.2, spring-1.0.2-dev.jar. I've always thought the convention was to tack -dev on the _next_ version number, so this should be spring-1.1-dev.jar (since there is no 1.0.3 planned). I've also in the past used a convention I haven't seen anywhere else, adding 'post', e.g. spring-1.0.2-post.jar. Colin Mason, Ross wrote: >Hi Sean, > >To use spring events and Mule you'll need the latest Mule jar (mule-0.9.1-dev.jar) and a >Spring dev jar called spring-1.0.2-dev.jar. These are both available in http://www.cubis.co.uk/repository/ > >Spring Guys: do you mind if I publish dev spring jars in the cubis repository? > >I'm not that close to finishing the demo app, but you can see the Spring Event testcases in the mule-extras cvs module > >http://cvs.sourceforge.net/viewcvs.py/mule/mule-extras/spring/src/test/org/mule/extras/spring/events/ > >As for a Jabber provider post on mailto:mul...@li..., some one there might have something otherwise it's pretty straight forward to write your own. > >Cheers, > >Ross > > > >>-----Original Message----- >>From: spr...@li... >>[mailto:spr...@li...]On Behalf >>Of sk...@fe... >>Sent: Tuesday, 6 July 2004 12:08 AM >>To: spr...@li... >>Subject: RE: [Springframework-developer] ApplicationEventMulticaster >> >> >> >> >>>>Ross Mason wrote >>>>The changes you made worked out very well. I've now got >>>> >>>> >>Spring receiving >>and publishing Mule events through the context and it even >>supports event >> >> >>>>subscriptions from spring beans. I'm putting a demo app >>>> >>>> >>together at the >>moment. >> >>Ross can you let the list know when your done with your demo >>app and what >>dependencies, Spring and Mule, that are required to run it. This sounds >>like something that will be useful to me. Also off topic but is anyone >>working on a mule to Jabber component? >> >> >>Sean Kroah >> >> >> >> >>------------------------------------------------------- >>This SF.Net email sponsored by Black Hat Briefings & Training. >>Attend Black Hat Briefings & Training, Las Vegas July 24-29 - >>digital self defense, top technical experts, no vendor pitches, >>unmatched networking opportunities. Visit www.blackhat.com >>_______________________________________________ >>Springframework-developer mailing list >>Spr...@li... >>https://lists.sourceforge.net/lists/listinfo/springframework-developer >> >> >> > > >------------------------------------------------------- >This SF.Net email sponsored by Black Hat Briefings & Training. >Attend Black Hat Briefings & Training, Las Vegas July 24-29 - >digital self defense, top technical experts, no vendor pitches, >unmatched networking opportunities. Visit www.blackhat.com >_______________________________________________ >Springframework-developer mailing list >Spr...@li... >https://lists.sourceforge.net/lists/listinfo/springframework-developer > > |
|
From: Mason, R. <ros...@vi...> - 2004-07-06 08:32:17
|
Hi Sean, To use spring events and Mule you'll need the latest Mule jar = (mule-0.9.1-dev.jar) and a=20 Spring dev jar called spring-1.0.2-dev.jar. These are both available in = http://www.cubis.co.uk/repository/ Spring Guys: do you mind if I publish dev spring jars in the cubis = repository? I'm not that close to finishing the demo app, but you can see the Spring = Event testcases in the mule-extras cvs module=20 http://cvs.sourceforge.net/viewcvs.py/mule/mule-extras/spring/src/test/or= g/mule/extras/spring/events/ As for a Jabber provider post on = mailto:mul...@li..., some one there might have = something otherwise it's pretty straight forward to write your own. Cheers, Ross >-----Original Message----- >From: spr...@li... >[mailto:spr...@li...]On Behalf >Of sk...@fe... >Sent: Tuesday, 6 July 2004 12:08 AM >To: spr...@li... >Subject: RE: [Springframework-developer] ApplicationEventMulticaster > > >>>Ross Mason wrote >>>The changes you made worked out very well. I've now got=20 >Spring receiving >and publishing Mule events through the context and it even=20 >supports event >>>subscriptions from spring beans. I'm putting a demo app=20 >together at the >moment. > >Ross can you let the list know when your done with your demo=20 >app and what >dependencies, Spring and Mule, that are required to run it. This sounds >like something that will be useful to me. Also off topic but is anyone >working on a mule to Jabber component? > > >Sean Kroah > > > > >------------------------------------------------------- >This SF.Net email sponsored by Black Hat Briefings & Training. >Attend Black Hat Briefings & Training, Las Vegas July 24-29 -=20 >digital self defense, top technical experts, no vendor pitches,=20 >unmatched networking opportunities. Visit www.blackhat.com >_______________________________________________ >Springframework-developer mailing list >Spr...@li... >https://lists.sourceforge.net/lists/listinfo/springframework-developer > |
|
From: <jas...@ma...> - 2004-07-05 17:40:16
|
On 5 Jul 2004, at 16:42, Rob Harrop wrote: > Sounds cool. I have already started the basics of some JMX > integration. I have the basics of bean registration and I am now > creating two implementations of the metadata assembler, one that > simply registers all properties and methods using reflection and the > other that uses commons attributes to be more selective. After that I > want to add notification support plus the ability to 'host' > MBeanServers as spring beans when working outside of a pre-configured > JMX environment like JBoss or Tomcat 5. Sounds cool; it'd make it easy to deploy Spring stuff inside JBoss too I guess. If you wrote an MBean which auto-deployed a Spring XML config file (which is pretty much what we've done for Geronimo, except it works at the GBean level) you could easily then auto-deploy Spring into MBean containers like JBoss. James ------- http://radio.weblogs.com/0112098/ |
|
From: Rob H. <ro...@ca...> - 2004-07-05 15:42:48
|
Sounds cool. I have already started the basics of some JMX integration. I have the basics of bean registration and I am now creating two implementations of the metadata assembler, one that simply registers all properties and methods using reflection and the other that uses commons attributes to be more selective. After that I want to add notification support plus the ability to 'host' MBeanServers as spring beans when working outside of a pre-configured JMX environment like JBoss or Tomcat 5. Rob On 5 Jul 2004, at 16:28, jas...@ma... wrote: > On 21 Jun 2004, at 20:47, Rob Harrop wrote: >> I have a project that really needs to have Spring and JMX >> integration. I heard from Rod that Keith has perhaps got some code >> done on this already. I am interested in getting some code done on >> this so if everyone can let me know where they are up to then >> hopefully I can put some work into the JMX stuff. > > FWIW I'm hacking on the Spring - Geronimo integration (in the > geronimo/modules/spring directory) which will as a side benefit > JMX-ify all the spring beans deployed inside Geronimo into the mx4j / > Geronimo stack. Though this will be based on the Geronimo-Kernel jar - > you might wanna create your own virgin pure JMX-spring solution as > well. > > James > ------- > http://radio.weblogs.com/0112098/ > > > > ------------------------------------------------------- > This SF.Net email sponsored by Black Hat Briefings & Training. > Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital > self defense, top technical experts, no vendor pitches, unmatched > networking opportunities. Visit www.blackhat.com > _______________________________________________ > Springframework-developer mailing list > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer > |
|
From: <jas...@ma...> - 2004-07-05 15:28:28
|
On 21 Jun 2004, at 20:47, Rob Harrop wrote: > I have a project that really needs to have Spring and JMX integration. > I heard from Rod that Keith has perhaps got some code done on this > already. I am interested in getting some code done on this so if > everyone can let me know where they are up to then hopefully I can put > some work into the JMX stuff. FWIW I'm hacking on the Spring - Geronimo integration (in the geronimo/modules/spring directory) which will as a side benefit JMX-ify all the spring beans deployed inside Geronimo into the mx4j / Geronimo stack. Though this will be based on the Geronimo-Kernel jar - you might wanna create your own virgin pure JMX-spring solution as well. James ------- http://radio.weblogs.com/0112098/ |
|
From: <jue...@we...> - 2004-07-05 14:44:32
|
On the occasion, a significant difference to Hibernate that I noticed: = All of OJB's included ObjectCache implementations cache the persistent = objects themselves; all PersistenceBrokers receive shared references to = cached objects. This is of course very fast but obviously just safe for = read-only objects; there doesn't seem to be support for a transactional = read-write cache yet. iBATIS SQL Maps and TopLink work the same way in terms of caching. In = TopLink, this is the reason why you need to clone an object before = attempting to manipulate it. Of course, Hibernate's rebuilding of object = graphs on every load causes overhead (quite significant for large object = graphs!), but it does have the benefit of independent copies in each = Hibernate Session, without the potential for side effects like dirty = reads. JDO implementations have to stick to Hibernate's semantics when = providing a second-level cache: A PersistenceManager is required to = always work with independent instances by the JDO spec. It seems to me = that "transparent persistence" tools (that perform automatic change = detection on every loaded object) need to work that way, while pure = object/relational mappers (with explicit store calls) can more easily = use shared object instances in a read-only cache. Thoughts? Juergen -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of j=FCrgen h=F6ller [werk3AT] Sent: Monday, July 05, 2004 2:18 PM To: spr...@li... Subject: Re: [Springframework-developer] OJB support Haven't had much time yesterday evening; gonna go through the reworked = Petclinic tonight, having it committed by tomorrow morning. Works nicely, so far: Switching between Hibernate, OJB's = PersistenceBroker and JDBC is just a change in web.xml's = "contextConfigLocation - on the exact same data model! OJB's PersistenceBroker is actually a good fit for Petclinic's data = access needs: nice mapping capabilities, but no automatic change = detection (which Petclinic doesn't need anyway). Juergen -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of j=FCrgen h=F6ller [werk3AT] Sent: Sunday, July 04, 2004 3:34 PM To: spr...@li... Subject: Re: [Springframework-developer] OJB support I've just finished Petclinic's data access layer: took just about 4 = hours, mainly to get the entity relationship mappings right. I've also = retested that Petclinic still runs nicely on Hibernate, OJB and JDBC - = with the exact same data model. I'll commit the reworked Petclinic = tonight. =20 Juergen =20 ________________________________ Von: spr...@li... im Auftrag = von j=FCrgen h=F6ller [werk3AT] Gesendet: Sa 03.07.2004 12:58 An: spr...@li... Betreff: Re: [Springframework-developer] OJB support I've just finished all remaining OJB support infrastructure features: = PersistenceBrokerTransactionManager can expose JDBC transactions now, = there's a PersistenceBrokerDaoSupport class, and there's a = LocalDataSourceConnectionFactory helper that allows to use a = Spring-managed DataSource bean as OJB connection factory. LocalDataSourceConnectionFactory works with a static field, which is = clearly not ideal but forced by OJB's static initializer model. The OJB = guys told me that they are gonna address this for OJB 1.1, so the = current implementation is hopefully just an intermediate solution. Note that an "Open PersistenceBroker in View" pattern is not necessary = with OJB: It simply fetches a new Connection for lazy loading rather = than depending on the original PersistenceBroker still being open. I've = not actually tested this, but it was pointed out in the TSS thread. I'll provide an OJB data access implementation for Petclinic in the = course of this weekend, as an example for OJB PersistenceBroker = integration. I don't assume that this is more than 4 hours of work. I'll = also verify the lazy loading assumptions there. Furthermore, I'll = provide a test suite for the OJB support in the course of next week. The only further JAR that we need to ship for building the OJB = integration and running the sample should be db-ojb-1.0.0 jar (~800 KB). = I guess that's OK for the -with-dependencies download. It is certainly = desirable to show that we support OJB out-of-the-box just like = Hibernate. Early feedback welcome :-) Juergen ________________________________ Von: spr...@li... im Auftrag = von j=FCrgen h=F6ller [werk3AT] Gesendet: Fr 02.07.2004 21:02 An: spr...@li... Betreff: [Springframework-developer] OJB support Hi everybody, On the occasion of the recent TSS thread on OJB 1.0 final, I've decided = to give OJB PersistenceBroker integration a go. I've already committed = the initial bunch a couple of hours ago, providing = PersistenceBrokerTemplate, PersistenceBrokerTransactionManager, etc. This initial stuff took just about 4 hours, including getting OJB to = work with a simple example! I was pleasantly surprised by how easy OJB = is to set up. I'm not fond really fond of its static initializer model, = but it does work and is simple enough to get going. I'm currently working on support for exposing the JDBC Connection in = PersistenceBrokerTransactionManager and other refinements. I plan to add = a Petclinic data access version for OJB this weekend: As far as I can = judge at this point of time, this should be simple enough to do. One of the distinct characteristics of OJB's PersistenceBroker is that = it offers all of OJB's mapping and querying capabilities, but does not = attempt to provide object-level transactions, i.e. does not do automatic = change detection but rather rely on explicit store calls. For = Petclinic-style web apps, this is more than enough. The stuff in CVS does work already, so whoever's interested, feel free = to have a look at it :-) Juergen ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 -=20 digital self defense, top technical experts, no vendor pitches,=20 unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 -=20 digital self defense, top technical experts, no vendor pitches,=20 unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: <sk...@fe...> - 2004-07-05 14:08:11
|
>>Ross Mason wrote >>The changes you made worked out very well. I've now got Spring receiving and publishing Mule events through the context and it even supports event >>subscriptions from spring beans. I'm putting a demo app together at the moment. Ross can you let the list know when your done with your demo app and what dependencies, Spring and Mule, that are required to run it. This sounds like something that will be useful to me. Also off topic but is anyone working on a mule to Jabber component? Sean Kroah |
|
From: Rob H. <ro...@ca...> - 2004-07-05 12:31:23
|
All, Well I am back after the house move that went on slightly longer after the pipes burst and ruined the new ceiling :(. I am looking to make some substantial headway on the JMX integration. Has anyone started on this yet? Rob |
|
From: <jue...@we...> - 2004-07-05 12:16:42
|
Haven't had much time yesterday evening; gonna go through the reworked = Petclinic tonight, having it committed by tomorrow morning. Works nicely, so far: Switching between Hibernate, OJB's = PersistenceBroker and JDBC is just a change in web.xml's = "contextConfigLocation - on the exact same data model! OJB's PersistenceBroker is actually a good fit for Petclinic's data = access needs: nice mapping capabilities, but no automatic change = detection (which Petclinic doesn't need anyway). Juergen -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of j=FCrgen h=F6ller [werk3AT] Sent: Sunday, July 04, 2004 3:34 PM To: spr...@li... Subject: Re: [Springframework-developer] OJB support I've just finished Petclinic's data access layer: took just about 4 = hours, mainly to get the entity relationship mappings right. I've also = retested that Petclinic still runs nicely on Hibernate, OJB and JDBC - = with the exact same data model. I'll commit the reworked Petclinic = tonight. =20 Juergen =20 ________________________________ Von: spr...@li... im Auftrag = von j=FCrgen h=F6ller [werk3AT] Gesendet: Sa 03.07.2004 12:58 An: spr...@li... Betreff: Re: [Springframework-developer] OJB support I've just finished all remaining OJB support infrastructure features: = PersistenceBrokerTransactionManager can expose JDBC transactions now, = there's a PersistenceBrokerDaoSupport class, and there's a = LocalDataSourceConnectionFactory helper that allows to use a = Spring-managed DataSource bean as OJB connection factory. LocalDataSourceConnectionFactory works with a static field, which is = clearly not ideal but forced by OJB's static initializer model. The OJB = guys told me that they are gonna address this for OJB 1.1, so the = current implementation is hopefully just an intermediate solution. Note that an "Open PersistenceBroker in View" pattern is not necessary = with OJB: It simply fetches a new Connection for lazy loading rather = than depending on the original PersistenceBroker still being open. I've = not actually tested this, but it was pointed out in the TSS thread. I'll provide an OJB data access implementation for Petclinic in the = course of this weekend, as an example for OJB PersistenceBroker = integration. I don't assume that this is more than 4 hours of work. I'll = also verify the lazy loading assumptions there. Furthermore, I'll = provide a test suite for the OJB support in the course of next week. The only further JAR that we need to ship for building the OJB = integration and running the sample should be db-ojb-1.0.0 jar (~800 KB). = I guess that's OK for the -with-dependencies download. It is certainly = desirable to show that we support OJB out-of-the-box just like = Hibernate. Early feedback welcome :-) Juergen ________________________________ Von: spr...@li... im Auftrag = von j=FCrgen h=F6ller [werk3AT] Gesendet: Fr 02.07.2004 21:02 An: spr...@li... Betreff: [Springframework-developer] OJB support Hi everybody, On the occasion of the recent TSS thread on OJB 1.0 final, I've decided = to give OJB PersistenceBroker integration a go. I've already committed = the initial bunch a couple of hours ago, providing = PersistenceBrokerTemplate, PersistenceBrokerTransactionManager, etc. This initial stuff took just about 4 hours, including getting OJB to = work with a simple example! I was pleasantly surprised by how easy OJB = is to set up. I'm not fond really fond of its static initializer model, = but it does work and is simple enough to get going. I'm currently working on support for exposing the JDBC Connection in = PersistenceBrokerTransactionManager and other refinements. I plan to add = a Petclinic data access version for OJB this weekend: As far as I can = judge at this point of time, this should be simple enough to do. One of the distinct characteristics of OJB's PersistenceBroker is that = it offers all of OJB's mapping and querying capabilities, but does not = attempt to provide object-level transactions, i.e. does not do automatic = change detection but rather rely on explicit store calls. For = Petclinic-style web apps, this is more than enough. The stuff in CVS does work already, so whoever's interested, feel free = to have a look at it :-) Juergen ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 -=20 digital self defense, top technical experts, no vendor pitches,=20 unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: Rod J. <rod...@in...> - 2004-07-05 03:14:02
|
Cool stuff. Thanks Colin. Good point re keeping on top of stuff. I think one issue is enough. R ----- Original Message ----- From: "Colin Sampaleanu" <col...@ex...> To: <spr...@li...> Sent: Sunday, July 04, 2004 8:35 PM Subject: [Springframework-developer] docs > All. > > I've spent some significant time in completely going over the beans > (main container) chapter to rewrite for clarity and grammar, re-org, and > add missing functionality, as needed. I hope the net result is that this > chapter is pretty well completely up to date now (including new stuff > like method injection, factory methods, child bean defs, etc), and that > reading this chapter, which covers the heart of Spring's functionality, > is a pleasureable experience for new users, although of course it's > still a reference, not a tutorial. The main thing I'd still like to do > some time is go through it and link all the class/interface names to the > actual JavaDoc. The website has been updated. > > Doing this made me realize that while we can't always document > everything right away (i.e. time is an issue for everyone of course) we > need to stay on top of what needs to be documented or clarified so doc > tasks don't get lost in the shuffle. Can everyone try to take a look at > the following Jira issue and modify it to reflect documentation bits > that you think need to be added or areas that need to be clarified, > enhanced, etc. I'm sure there's lots of stuff that I didn't think of. It > may make sense to have separate issues for each task, instead of using > one task like this, but having the info anywhere is better than nothing. > http://opensource.atlassian.com/projects/spring/browse/SPR-77 > > Colin > > > > > ------------------------------------------------------- > This SF.Net email sponsored by Black Hat Briefings & Training. > Attend Black Hat Briefings & Training, Las Vegas July 24-29 - > digital self defense, top technical experts, no vendor pitches, > unmatched networking opportunities. Visit www.blackhat.com > _______________________________________________ > Springframework-developer mailing list > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: <al...@jt...> - 2004-07-05 01:29:03
|
<html><head>
<style>
.white { color:#FFFFFF }.index { background-color:#FFFFFF }.index-passed { =
color:#004400 }.index-failed { color:#FF0000; font-weight:bold }.index-head=
er { font-weight:bold }.link { font-family:arial,helvetica,sans-serif; font=
-size:10pt; color:#FFFFFF; text-decoration:none; }.tab-table { margin: 0em =
0em 0.5em 0em; }.tabs { font-family:arial,helvetica,sans-serif; font-size:8=
pt; color:#000000; font-weight:bold; padding: 0em 2em; background-color:#EE=
EEEE; }.tabs-link { color:#000000; text-decoration:none; }.tabs-link:visite=
d { color:#000000; text-decoration:none; }.tabs-selected { font-family:aria=
l,helvetica,sans-serif; font-size:8pt; color:#000000; font-weight:bold; pad=
ding: 0em 2em; }.tabs-selected { border: inset; }.header-title { font-famil=
y:arial,helvetica,sans-serif; font-size:12pt; color:#000000; font-weight:bo=
ld; }.header-label { font-weight:bold; }.header-data { font-family:arial,he=
lvetica,sans-serif; font-size:10pt; color:#000000; }.modifications-data { f=
ont-family:arial,helvetica,sans-serif; font-size:8pt; color:#000000; }.modi=
fications-sectionheader { background-color:#000066; font-family:arial,helve=
tica,sans-serif; font-size:10pt; color:#FFFFFF; }.modifications-oddrow { ba=
ckground-color:#CCCCCC }.modifications-evenrow { background-color:#FFFFCC }=
.changelists-oddrow { background-color:#CCCCCC }.changelists-evenrow { back=
ground-color:#FFFFCC }.changelists-file-spacer { background-color:#FFFFFF }=
.changelists-file-evenrow { background-color:#EEEEEE }.changelists-file-odd=
row { background-color:#FFFFEE }.changelists-file-header { background-color=
:#666666; font-family:arial,helvetica,sans-serif; font-size:8pt; color:#FFF=
FFF; }.compile-data { font-family:arial,helvetica,sans-serif; font-size:8pt=
; color:#000000; }.compile-error-data { font-family:arial,helvetica,sans-se=
rif; font-size:8pt; color:#FF0000; }.compile-warn-data { font-family:arial,=
helvetica,sans-serif; font-size:8pt; color:#CC9900; }.compile-sectionheader=
{ background-color:#000066; font-family:arial,helvetica,sans-serif; font-s=
ize:10pt; color:#FFFFFF; }.distributables-data { font-family:arial,helvetic=
a,sans-serif; font-size:8pt; color:#000000; }.distributables-sectionheader =
{ background-color:#000066; font-family:arial,helvetica,sans-serif; font-si=
ze:10pt; color:#FFFFFF; }.distributables-oddrow { background-color:#CCCCCC =
}.unittests-sectionheader { background-color:#000066; font-family:arial,hel=
vetica,sans-serif; font-size:10pt; color:#FFFFFF; }.unittests-oddrow { back=
ground-color:#CCCCCC }.unittests-data { font-family:arial,helvetica,sans-se=
rif; font-size:8pt; color:#000000; }.unittests-error { font-family:arial,he=
lvetica,sans-serif; font-size:8pt; color:#FF0000; }.checkstyle-oddrow { bac=
kground-color:#CCCCCC }.checkstyle-data { font-family:arial,helvetica,sans-=
serif; font-size:8pt; color:#000000; }.checkstyle-sectionheader { backgroun=
d-color:#000066; font-family:arial,helvetica,sans-serif; font-size:10pt; co=
lor:#FFFFFF; }
</style>
</head><body>
<p>
<table width=3D"98%" border=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=
=3D"center"><tr><td class=3D"header-title">BUILD COMPLETE - =
build.45</td></tr><tr><td class=3D"header-data"><span class=
=3D"header-label">Date of build: </span>07/05/2004 00:16:29</td></tr><=
tr><td class=3D"header-data"><span class=3D"header-label">Time to build:&nb=
sp;</span>13 minutes 21 seconds</td></tr><tr><td class=3D"header-data"><spa=
n class=3D"header-label">Last changed: </span>07/04/2004 16:39:20</td>=
</tr><tr><td class=3D"header-data"><span class=3D"header-label">Last log en=
try: </span>keep on reworking beans chapter, including section on Prop=
ertyEditors</td></tr></table><p>
<table xmlns=3D"http://www.w3.org/TR/html4/strict.dtd" width=3D"98%" border=
=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=3D"center"/><p>
<p>
<table xmlns=3D"http://www.w3.org/TR/html4/strict.dtd" width=3D"98%" border=
=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=3D"center"><tr><td class=
=3D"compile-sectionheader"> Errors/Warnings: (=
6) </td></tr><tr><td><pre class=3D"compile-error-data">N=
ote: Some input files use or override a deprecated API.<br class=3D"none"/>=
Note: Recompile with -deprecation for details.Note: /jteam/build/checkout/s=
pring/spring/mock/org/springframework/mock/web/MockHttpSession.java uses or=
overrides a deprecated API.<br class=3D"none"/>Note: Recompile with -depre=
cation for details.<br class=3D"none"/>Note: Some input files use or overri=
de a deprecated API.<br class=3D"none"/>Note: Recompile with -deprecation f=
or details.<br class=3D"none"/></pre></td></tr></table><p>
<p>
<table width=3D"98%" border=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=
=3D"center"><tr><td colspan=3D"4" class=3D"unittests-sectionheader"> =
Unit Tests: (1470) </td></tr><tr><td><tabl=
e width=3D"98%" border=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=3D"c=
enter"><tr><td class=3D"unittests-data"> failure =
</td><td width=3D"40%" class=3D"unittests-data">testHomePage</td><td width=
=3D"40%" class=3D"unittests-data">org.springframework.apptests.buildtest.Al=
lTests</td></tr></table></td></tr><tr></tr><tr><td colspan=3D"2"> </td=
></tr><tr><td colspan=3D"4" class=3D"unittests-sectionheader"> =
Unit Test Error Details: (1) </td></tr><tr=
><td class=3D"unittests-data" colspan=3D"2"> Test: test=
HomePage</td></tr><tr><td class=3D"unittests-data" colspan=3D"2"> =
Class: org.springframework.apptests.buildtest.AllTests</td></tr>=
<tr><td class=3D"unittests-data" colspan=3D"2"> Type: junit.=
framework.AssertionFailedError</td></tr><tr><td class=3D"unittests-data" co=
lspan=3D"2"> Message: Exception while testing URL http://loc=
alhost:13084/buildtest:java.io.IOException</td></tr><tr><td class=3D"unitte=
sts-error" colspan=3D"2"><pre>junit.framework.AssertionFailedError: Excepti=
on while testing URL http://localhost:13084/buildtest:java.io.IOException<b=
r>=09at org.springframework.apptests.buildtest.AllTests.testHomePage(Unknow=
n Source)<br>=09at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Meth=
od)<br>=09at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccess=
orImpl.java:39)<br>=09at sun.reflect.DelegatingMethodAccessorImpl.invoke(De=
legatingMethodAccessorImpl.java:25)<br></pre></td></tr><tr><td colspan=3D"2=
"> </td></tr></table><p>
<table width=3D"98%" border=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=
=3D"center"><tr><td colspan=3D"4" class=3D"modifications-sectionheader"> =
Modifications since last build: =
(1) </td></tr><tr class=3D"modifications-evenrow"><td c=
lass=3D"modifications-data">modified</td><td class=3D"modifications-data">c=
olins</td><td class=3D"modifications-data">docs/reference/src/beans.xml</td=
><td class=3D"modifications-data">keep on reworking beans chapter, includin=
g section on PropertyEditors</td></tr></table><p>
<table width=3D"98%" border=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=
=3D"center"><tr><td class=3D"distributables-sectionheader"> =
Deployments by this build: (8) </td><=
/tr><tr><td class=3D"distributables-data">Building jar: /jteam/build/checko=
ut/spring/spring/dist/spring.jar</td></tr><tr class=3D"distributables-oddro=
w"><td class=3D"distributables-data">Building war: /jteam/build/checkout/sp=
ring/spring/autobuilds/apps/buildtest/dist/buildtest.war</td></tr><tr><td c=
lass=3D"distributables-data">Building war: /jteam/build/checkout/spring/spr=
ing/autobuilds/apps/buildtest/dist/buildtest.war</td></tr><tr class=3D"dist=
ributables-oddrow"><td class=3D"distributables-data">Building war: /jteam/b=
uild/checkout/spring/spring/autobuilds/apps/buildtest/dist/buildtest.war</t=
d></tr><tr><td class=3D"distributables-data">Building jar: /jteam/build/che=
ckout/spring/spring/autobuilds/apps/jpetstore/war/WEB-INF/lib/jpetstore.jar=
</td></tr><tr class=3D"distributables-oddrow"><td class=3D"distributables-d=
ata">Building war: /jteam/build/checkout/spring/spring/autobuilds/apps/jpet=
store/dist/jpetstore.war</td></tr><tr><td class=3D"distributables-data">Bui=
lding jar: /jteam/build/checkout/spring/spring/autobuilds/apps/jpetstore/wa=
r/WEB-INF/lib/jpetstore.jar</td></tr><tr class=3D"distributables-oddrow"><t=
d class=3D"distributables-data">Building war: /jteam/build/checkout/spring/=
spring/autobuilds/apps/jpetstore/dist/jpetstore.war</td></tr></table>
</body></html> |
|
From: Colin S. <col...@ex...> - 2004-07-04 19:34:42
|
All. I've spent some significant time in completely going over the beans (main container) chapter to rewrite for clarity and grammar, re-org, and add missing functionality, as needed. I hope the net result is that this chapter is pretty well completely up to date now (including new stuff like method injection, factory methods, child bean defs, etc), and that reading this chapter, which covers the heart of Spring's functionality, is a pleasureable experience for new users, although of course it's still a reference, not a tutorial. The main thing I'd still like to do some time is go through it and link all the class/interface names to the actual JavaDoc. The website has been updated. Doing this made me realize that while we can't always document everything right away (i.e. time is an issue for everyone of course) we need to stay on top of what needs to be documented or clarified so doc tasks don't get lost in the shuffle. Can everyone try to take a look at the following Jira issue and modify it to reflect documentation bits that you think need to be added or areas that need to be clarified, enhanced, etc. I'm sure there's lots of stuff that I didn't think of. It may make sense to have separate issues for each task, instead of using one task like this, but having the info anywhere is better than nothing. http://opensource.atlassian.com/projects/spring/browse/SPR-77 Colin |
|
From: <jue...@we...> - 2004-07-04 13:34:13
|
I've just finished Petclinic's data access layer: took just about 4 = hours, mainly to get the entity relationship mappings right. I've also = retested that Petclinic still runs nicely on Hibernate, OJB and JDBC - = with the exact same data model. I'll commit the reworked Petclinic = tonight. =20 Juergen =20 ________________________________ Von: spr...@li... im Auftrag = von j=FCrgen h=F6ller [werk3AT] Gesendet: Sa 03.07.2004 12:58 An: spr...@li... Betreff: Re: [Springframework-developer] OJB support I've just finished all remaining OJB support infrastructure features: = PersistenceBrokerTransactionManager can expose JDBC transactions now, = there's a PersistenceBrokerDaoSupport class, and there's a = LocalDataSourceConnectionFactory helper that allows to use a = Spring-managed DataSource bean as OJB connection factory. LocalDataSourceConnectionFactory works with a static field, which is = clearly not ideal but forced by OJB's static initializer model. The OJB = guys told me that they are gonna address this for OJB 1.1, so the = current implementation is hopefully just an intermediate solution. Note that an "Open PersistenceBroker in View" pattern is not necessary = with OJB: It simply fetches a new Connection for lazy loading rather = than depending on the original PersistenceBroker still being open. I've = not actually tested this, but it was pointed out in the TSS thread. I'll provide an OJB data access implementation for Petclinic in the = course of this weekend, as an example for OJB PersistenceBroker = integration. I don't assume that this is more than 4 hours of work. I'll = also verify the lazy loading assumptions there. Furthermore, I'll = provide a test suite for the OJB support in the course of next week. The only further JAR that we need to ship for building the OJB = integration and running the sample should be db-ojb-1.0.0 jar (~800 KB). = I guess that's OK for the -with-dependencies download. It is certainly = desirable to show that we support OJB out-of-the-box just like = Hibernate. Early feedback welcome :-) Juergen ________________________________ Von: spr...@li... im Auftrag = von j=FCrgen h=F6ller [werk3AT] Gesendet: Fr 02.07.2004 21:02 An: spr...@li... Betreff: [Springframework-developer] OJB support Hi everybody, On the occasion of the recent TSS thread on OJB 1.0 final, I've decided = to give OJB PersistenceBroker integration a go. I've already committed = the initial bunch a couple of hours ago, providing = PersistenceBrokerTemplate, PersistenceBrokerTransactionManager, etc. This initial stuff took just about 4 hours, including getting OJB to = work with a simple example! I was pleasantly surprised by how easy OJB = is to set up. I'm not fond really fond of its static initializer model, = but it does work and is simple enough to get going. I'm currently working on support for exposing the JDBC Connection in = PersistenceBrokerTransactionManager and other refinements. I plan to add = a Petclinic data access version for OJB this weekend: As far as I can = judge at this point of time, this should be simple enough to do. One of the distinct characteristics of OJB's PersistenceBroker is that = it offers all of OJB's mapping and querying capabilities, but does not = attempt to provide object-level transactions, i.e. does not do automatic = change detection but rather rely on explicit store calls. For = Petclinic-style web apps, this is more than enough. The stuff in CVS does work already, so whoever's interested, feel free = to have a look at it :-) Juergen ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: <al...@jt...> - 2004-07-03 22:07:02
|
<html><head>
<style>
.white { color:#FFFFFF }.index { background-color:#FFFFFF }.index-passed { =
color:#004400 }.index-failed { color:#FF0000; font-weight:bold }.index-head=
er { font-weight:bold }.link { font-family:arial,helvetica,sans-serif; font=
-size:10pt; color:#FFFFFF; text-decoration:none; }.tab-table { margin: 0em =
0em 0.5em 0em; }.tabs { font-family:arial,helvetica,sans-serif; font-size:8=
pt; color:#000000; font-weight:bold; padding: 0em 2em; background-color:#EE=
EEEE; }.tabs-link { color:#000000; text-decoration:none; }.tabs-link:visite=
d { color:#000000; text-decoration:none; }.tabs-selected { font-family:aria=
l,helvetica,sans-serif; font-size:8pt; color:#000000; font-weight:bold; pad=
ding: 0em 2em; }.tabs-selected { border: inset; }.header-title { font-famil=
y:arial,helvetica,sans-serif; font-size:12pt; color:#000000; font-weight:bo=
ld; }.header-label { font-weight:bold; }.header-data { font-family:arial,he=
lvetica,sans-serif; font-size:10pt; color:#000000; }.modifications-data { f=
ont-family:arial,helvetica,sans-serif; font-size:8pt; color:#000000; }.modi=
fications-sectionheader { background-color:#000066; font-family:arial,helve=
tica,sans-serif; font-size:10pt; color:#FFFFFF; }.modifications-oddrow { ba=
ckground-color:#CCCCCC }.modifications-evenrow { background-color:#FFFFCC }=
.changelists-oddrow { background-color:#CCCCCC }.changelists-evenrow { back=
ground-color:#FFFFCC }.changelists-file-spacer { background-color:#FFFFFF }=
.changelists-file-evenrow { background-color:#EEEEEE }.changelists-file-odd=
row { background-color:#FFFFEE }.changelists-file-header { background-color=
:#666666; font-family:arial,helvetica,sans-serif; font-size:8pt; color:#FFF=
FFF; }.compile-data { font-family:arial,helvetica,sans-serif; font-size:8pt=
; color:#000000; }.compile-error-data { font-family:arial,helvetica,sans-se=
rif; font-size:8pt; color:#FF0000; }.compile-warn-data { font-family:arial,=
helvetica,sans-serif; font-size:8pt; color:#CC9900; }.compile-sectionheader=
{ background-color:#000066; font-family:arial,helvetica,sans-serif; font-s=
ize:10pt; color:#FFFFFF; }.distributables-data { font-family:arial,helvetic=
a,sans-serif; font-size:8pt; color:#000000; }.distributables-sectionheader =
{ background-color:#000066; font-family:arial,helvetica,sans-serif; font-si=
ze:10pt; color:#FFFFFF; }.distributables-oddrow { background-color:#CCCCCC =
}.unittests-sectionheader { background-color:#000066; font-family:arial,hel=
vetica,sans-serif; font-size:10pt; color:#FFFFFF; }.unittests-oddrow { back=
ground-color:#CCCCCC }.unittests-data { font-family:arial,helvetica,sans-se=
rif; font-size:8pt; color:#000000; }.unittests-error { font-family:arial,he=
lvetica,sans-serif; font-size:8pt; color:#FF0000; }.checkstyle-oddrow { bac=
kground-color:#CCCCCC }.checkstyle-data { font-family:arial,helvetica,sans-=
serif; font-size:8pt; color:#000000; }.checkstyle-sectionheader { backgroun=
d-color:#000066; font-family:arial,helvetica,sans-serif; font-size:10pt; co=
lor:#FFFFFF; }
</style>
</head><body>
<p>
<table width=3D"98%" border=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=
=3D"center"><tr><td class=3D"header-title">BUILD COMPLETE - =
build.44</td></tr><tr><td class=3D"header-data"><span class=
=3D"header-label">Date of build: </span>07/04/2004 00:16:36</td></tr><=
tr><td class=3D"header-data"><span class=3D"header-label">Time to build:&nb=
sp;</span>13 minutes 20 seconds</td></tr><tr><td class=3D"header-data"><spa=
n class=3D"header-label">Last changed: </span>07/03/2004 12:34:44</td>=
</tr><tr><td class=3D"header-data"><span class=3D"header-label">Last log en=
try: </span>avoid NPE in getters</td></tr></table><p>
<table xmlns=3D"http://www.w3.org/TR/html4/strict.dtd" width=3D"98%" border=
=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=3D"center"/><p>
<p>
<table xmlns=3D"http://www.w3.org/TR/html4/strict.dtd" width=3D"98%" border=
=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=3D"center"><tr><td class=
=3D"compile-sectionheader"> Errors/Warnings: (=
6) </td></tr><tr><td><pre class=3D"compile-error-data">N=
ote: Some input files use or override a deprecated API.<br class=3D"none"/>=
Note: Recompile with -deprecation for details.Note: /jteam/build/checkout/s=
pring/spring/mock/org/springframework/mock/web/MockHttpSession.java uses or=
overrides a deprecated API.<br class=3D"none"/>Note: Recompile with -depre=
cation for details.<br class=3D"none"/>Note: Some input files use or overri=
de a deprecated API.<br class=3D"none"/>Note: Recompile with -deprecation f=
or details.<br class=3D"none"/></pre></td></tr></table><p>
<p>
<table width=3D"98%" border=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=
=3D"center"><tr><td colspan=3D"4" class=3D"unittests-sectionheader"> =
Unit Tests: (1470) </td></tr><tr><td><tabl=
e width=3D"98%" border=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=3D"c=
enter"><tr><td class=3D"unittests-data"> failure =
</td><td width=3D"40%" class=3D"unittests-data">testHomePage</td><td width=
=3D"40%" class=3D"unittests-data">org.springframework.apptests.buildtest.Al=
lTests</td></tr></table></td></tr><tr></tr><tr><td colspan=3D"2"> </td=
></tr><tr><td colspan=3D"4" class=3D"unittests-sectionheader"> =
Unit Test Error Details: (1) </td></tr><tr=
><td class=3D"unittests-data" colspan=3D"2"> Test: test=
HomePage</td></tr><tr><td class=3D"unittests-data" colspan=3D"2"> =
Class: org.springframework.apptests.buildtest.AllTests</td></tr>=
<tr><td class=3D"unittests-data" colspan=3D"2"> Type: junit.=
framework.AssertionFailedError</td></tr><tr><td class=3D"unittests-data" co=
lspan=3D"2"> Message: Exception while testing URL http://loc=
alhost:13084/buildtest:java.io.IOException</td></tr><tr><td class=3D"unitte=
sts-error" colspan=3D"2"><pre>junit.framework.AssertionFailedError: Excepti=
on while testing URL http://localhost:13084/buildtest:java.io.IOException<b=
r>=09at org.springframework.apptests.buildtest.AllTests.testHomePage(Unknow=
n Source)<br>=09at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Meth=
od)<br>=09at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccess=
orImpl.java:39)<br>=09at sun.reflect.DelegatingMethodAccessorImpl.invoke(De=
legatingMethodAccessorImpl.java:25)<br></pre></td></tr><tr><td colspan=3D"2=
"> </td></tr></table><p>
<table width=3D"98%" border=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=
=3D"center"><tr><td colspan=3D"4" class=3D"modifications-sectionheader"> =
Modifications since last build: =
(19) </td></tr><tr class=3D"modifications-evenrow"><td =
class=3D"modifications-data">modified</td><td class=3D"modifications-data">=
jhoeller</td><td class=3D"modifications-data">src/org/springframework/orm/h=
ibernate/support/HibernateDaoSupport.java</td><td class=3D"modifications-da=
ta">avoid NPE in getters</td></tr><tr class=3D"modifications-oddrow"><td cl=
ass=3D"modifications-data">modified</td><td class=3D"modifications-data">jh=
oeller</td><td class=3D"modifications-data">src/org/springframework/orm/iba=
tis/support/SqlMapClientDaoSupport.java</td><td class=3D"modifications-data=
">avoid NPE in getters</td></tr><tr class=3D"modifications-evenrow"><td cla=
ss=3D"modifications-data">modified</td><td class=3D"modifications-data">jho=
eller</td><td class=3D"modifications-data">src/org/springframework/orm/ibat=
is/support/SqlMapDaoSupport.java</td><td class=3D"modifications-data">avoid=
NPE in getters</td></tr><tr class=3D"modifications-oddrow"><td class=3D"mo=
difications-data">modified</td><td class=3D"modifications-data">jhoeller</t=
d><td class=3D"modifications-data">src/org/springframework/orm/jdo/support/=
JdoDaoSupport.java</td><td class=3D"modifications-data">avoid NPE in getter=
s</td></tr><tr class=3D"modifications-evenrow"><td class=3D"modifications-d=
ata">modified</td><td class=3D"modifications-data">jhoeller</td><td class=
=3D"modifications-data">src/org/springframework/jdbc/core/support/JdbcDaoSu=
pport.java</td><td class=3D"modifications-data">avoid NPE in getters</td></=
tr><tr class=3D"modifications-oddrow"><td class=3D"modifications-data">modi=
fied</td><td class=3D"modifications-data">jhoeller</td><td class=3D"modific=
ations-data">test/org/springframework/orm/jdo/JdoTransactionManagerTests.ja=
va</td><td class=3D"modifications-data">factored out JDBC transaction handl=
ing code to DataSourceUtils, added "cleanupTransaction" to JdoDialect</td><=
/tr><tr class=3D"modifications-evenrow"><td class=3D"modifications-data">mo=
dified</td><td class=3D"modifications-data">jhoeller</td><td class=3D"modif=
ications-data">src/org/springframework/orm/jdo/DefaultJdoDialect.java</td><=
td class=3D"modifications-data">factored out JDBC transaction handling code=
to DataSourceUtils, added "cleanupTransaction" to JdoDialect</td></tr><tr =
class=3D"modifications-oddrow"><td class=3D"modifications-data">modified</t=
d><td class=3D"modifications-data">jhoeller</td><td class=3D"modifications-=
data">src/org/springframework/orm/jdo/JdoDialect.java</td><td class=3D"modi=
fications-data">factored out JDBC transaction handling code to DataSourceUt=
ils, added "cleanupTransaction" to JdoDialect</td></tr><tr class=3D"modific=
ations-evenrow"><td class=3D"modifications-data">modified</td><td class=3D"=
modifications-data">jhoeller</td><td class=3D"modifications-data">src/org/s=
pringframework/orm/jdo/JdoTransactionManager.java</td><td class=3D"modifica=
tions-data">factored out JDBC transaction handling code to DataSourceUtils,=
added "cleanupTransaction" to JdoDialect</td></tr><tr class=3D"modificatio=
ns-oddrow"><td class=3D"modifications-data">modified</td><td class=3D"modif=
ications-data">jhoeller</td><td class=3D"modifications-data">test/org/sprin=
gframework/orm/hibernate/HibernateTransactionManagerTests.java</td><td clas=
s=3D"modifications-data">factored out JDBC transaction handling code to Dat=
aSourceUtils</td></tr><tr class=3D"modifications-evenrow"><td class=3D"modi=
fications-data">modified</td><td class=3D"modifications-data">jhoeller</td>=
<td class=3D"modifications-data">src/org/springframework/orm/hibernate/Hibe=
rnateTransactionManager.java</td><td class=3D"modifications-data">factored =
out JDBC transaction handling code to DataSourceUtils</td></tr><tr class=3D=
"modifications-oddrow"><td class=3D"modifications-data">modified</td><td cl=
ass=3D"modifications-data">jhoeller</td><td class=3D"modifications-data">sr=
c/org/springframework/transaction/support/ResourceHolderSupport.java</td><t=
d class=3D"modifications-data">factored out JDBC transaction handling code =
to DataSourceUtils</td></tr><tr class=3D"modifications-evenrow"><td class=
=3D"modifications-data">modified</td><td class=3D"modifications-data">jhoel=
ler</td><td class=3D"modifications-data">src/org/springframework/jdbc/datas=
ource/DataSourceTransactionManager.java</td><td class=3D"modifications-data=
">factored out JDBC transaction handling code to DataSourceUtils</td></tr><=
tr class=3D"modifications-oddrow"><td class=3D"modifications-data">modified=
</td><td class=3D"modifications-data">jhoeller</td><td class=3D"modificatio=
ns-data">src/org/springframework/jdbc/datasource/DataSourceUtils.java</td><=
td class=3D"modifications-data">factored out JDBC transaction handling code=
to DataSourceUtils</td></tr><tr class=3D"modifications-evenrow"><td class=
=3D"modifications-data">modified</td><td class=3D"modifications-data">jhoel=
ler</td><td class=3D"modifications-data">src/org/springframework/orm/jdo/Jd=
oTransactionObject.java</td><td class=3D"modifications-data">moved previous=
IsolationLevel up to JdbcTransactionObjectSupport</td></tr><tr class=3D"mod=
ifications-oddrow"><td class=3D"modifications-data">modified</td><td class=
=3D"modifications-data">jhoeller</td><td class=3D"modifications-data">src/o=
rg/springframework/orm/hibernate/HibernateTransactionObject.java</td><td cl=
ass=3D"modifications-data">moved previousIsolationLevel up to JdbcTransacti=
onObjectSupport</td></tr><tr class=3D"modifications-evenrow"><td class=3D"m=
odifications-data">modified</td><td class=3D"modifications-data">jhoeller</=
td><td class=3D"modifications-data">src/org/springframework/jdbc/datasource=
/DataSourceTransactionObject.java</td><td class=3D"modifications-data">move=
d previousIsolationLevel up to JdbcTransactionObjectSupport</td></tr><tr cl=
ass=3D"modifications-oddrow"><td class=3D"modifications-data">modified</td>=
<td class=3D"modifications-data">jhoeller</td><td class=3D"modifications-da=
ta">src/org/springframework/jdbc/datasource/JdbcTransactionObjectSupport.ja=
va</td><td class=3D"modifications-data">moved previousIsolationLevel up to =
JdbcTransactionObjectSupport</td></tr><tr class=3D"modifications-evenrow"><=
td class=3D"modifications-data">modified</td><td class=3D"modifications-dat=
a">colins</td><td class=3D"modifications-data">docs/reference/src/beans.xml=
</td><td class=3D"modifications-data">ongoing beans container work. clean u=
p sections on bean post-processors and bean factory post-processors, as wel=
l as other areas.</td></tr></table><p>
<table width=3D"98%" border=3D"0" cellspacing=3D"0" cellpadding=3D"2" align=
=3D"center"><tr><td class=3D"distributables-sectionheader"> =
Deployments by this build: (8) </td><=
/tr><tr><td class=3D"distributables-data">Building jar: /jteam/build/checko=
ut/spring/spring/dist/spring.jar</td></tr><tr class=3D"distributables-oddro=
w"><td class=3D"distributables-data">Building war: /jteam/build/checkout/sp=
ring/spring/autobuilds/apps/buildtest/dist/buildtest.war</td></tr><tr><td c=
lass=3D"distributables-data">Building war: /jteam/build/checkout/spring/spr=
ing/autobuilds/apps/buildtest/dist/buildtest.war</td></tr><tr class=3D"dist=
ributables-oddrow"><td class=3D"distributables-data">Building war: /jteam/b=
uild/checkout/spring/spring/autobuilds/apps/buildtest/dist/buildtest.war</t=
d></tr><tr><td class=3D"distributables-data">Building jar: /jteam/build/che=
ckout/spring/spring/autobuilds/apps/jpetstore/war/WEB-INF/lib/jpetstore.jar=
</td></tr><tr class=3D"distributables-oddrow"><td class=3D"distributables-d=
ata">Building war: /jteam/build/checkout/spring/spring/autobuilds/apps/jpet=
store/dist/jpetstore.war</td></tr><tr><td class=3D"distributables-data">Bui=
lding jar: /jteam/build/checkout/spring/spring/autobuilds/apps/jpetstore/wa=
r/WEB-INF/lib/jpetstore.jar</td></tr><tr class=3D"distributables-oddrow"><t=
d class=3D"distributables-data">Building war: /jteam/build/checkout/spring/=
spring/autobuilds/apps/jpetstore/dist/jpetstore.war</td></tr></table>
</body></html> |
|
From: Mason, R. <ros...@vi...> - 2004-07-03 14:40:08
|
SGkgSnVlcmdlbiwgDQogDQpzb3JyeSBJIG1pc3NlZCB0aGF0IGRpc3RpY3Rpb24gOikuICANCiAN ClRoZSBjaGFuZ2VzIHlvdSBtYWRlIHdvcmtlZCBvdXQgdmVyeSB3ZWxsLiBJJ3ZlIG5vdyBnb3Qg U3ByaW5nIHJlY2VpdmluZyBhbmQgcHVibGlzaGluZyBNdWxlIGV2ZW50cyB0aHJvdWdoIHRoZSBj b250ZXh0IGFuZCBpdCBldmVuIHN1cHBvcnRzIGV2ZW50IHN1YnNjcmlwdGlvbnMgZnJvbSBzcHJp bmcgYmVhbnMuICBJJ20gcHV0dGluZyBhIGRlbW8gYXBwIHRvZ2V0aGVyIGF0IHRoZSBtb21lbnQu ICANCiANCkNoZWVycywNCiANClJvc3MNCg0KCS0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tIA0K CUZyb206IHNwcmluZ2ZyYW1ld29yay1kZXZlbG9wZXItYWRtaW5AbGlzdHMuc291cmNlZm9yZ2Uu bmV0IG9uIGJlaGFsZiBvZiBqw7xyZ2VuIGjDtmxsZXIgW3dlcmszQVRdIA0KCVNlbnQ6IFNhdCAz LzA3LzIwMDQgOTo0NyBBTSANCglUbzogc3ByaW5nZnJhbWV3b3JrLWRldmVsb3BlckBsaXN0cy5z b3VyY2Vmb3JnZS5uZXQgDQoJQ2M6IA0KCVN1YmplY3Q6IFJlOiBbU3ByaW5nZnJhbWV3b3JrLWRl dmVsb3Blcl0gQXBwbGljYXRpb25FdmVudE11bHRpY2FzdGVyDQoJDQoJDQoNCglSb3NzLA0KCQ0K CVdlIGN1cnJlbnRseSBkbyBzdWNoIGNoZWNrcyBhcyBmb2xsb3dzIHRocm91Z2hvdXQgdGhlIGZy YW1ld29yazoNCgktIGlmIHRoZSBjb250ZXh0IGNhbiB3b3JrIHdpdGggbXVsdGlwbGUgYmVhbnMg b2YgYSB0eXBlLCBkZXRlY3QgYnkgYmVhbiB0eXBlDQoJLSBpZiB0aGUgY29udGV4dCBleHBlY3Rz IGEgc2luZ2xlIGJlYW4gb2YgdGhhdCB0eXBlLCBkZXRlY3QgYnkgYmVhbiBuYW1lDQoJDQoJRGV0 ZWN0aW5nIGJ5IG5hbWUgYWxsb3dzIHRvIGRlZmluZSBvdGhlciBiZWFucyBvZiB0aGUgc2FtZSB0 eXBlLCB3aGljaCB3aWxsIGJlIGlnbm9yZWQgYnkgdGhlIGNvbnRleHQuIEZvciBleGFtcGxlLCB0 aGUgY29udGV4dC1kZXRlY3RlZCAiYXBwbGljYXRpb25FdmVudE11bHRpY2FzdGVyIiBjb3VsZCBk ZWxlZ2F0ZSB0byBiYWNrZW5kIEFwcGxpY2F0aW9uRXZlbnRNdWx0aWNhc3RlcnMsIG9yIHNvbWUg Y29tcG9uZW50cyBjb3VsZCBhY2Nlc3MgdGhlaXIgb3duIEFwcGxpY2F0aW9uRXZlbnRNdWx0aWNh c3RlciBiZWFucyB3aXRob3V0IHRoZSBjb250ZXh0IGJlaW5nIGludm9sdmVkLg0KCQ0KCVRoZXJl Zm9yZSBJJ2QgbGlrZSB0byBrZWVwIGl0IGJ5IG5hbWUsIGFzIGxvbmcgYXMgdGhlIGNvbnRleHQg aXNuJ3Qgc3VwcG9zZWQgdG8gd29yayB3aXRoIG11bHRpcGxlIEFwcGxpY2F0aW9uRXZlbnRNdWx0 aWNhc3RlcnMuDQoJDQoJSnVlcmdlbg0KCQ0KCQ0KCV9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fDQoJDQoJVm9uOiBzcHJpbmdmcmFtZXdvcmstZGV2ZWxvcGVyLWFkbWluQGxpc3RzLnNv dXJjZWZvcmdlLm5ldCBpbSBBdWZ0cmFnIHZvbiBNYXNvbiwgUm9zcw0KCUdlc2VuZGV0OiBTYSAw My4wNy4yMDA0IDA4OjM2DQoJQW46IHNwcmluZ2ZyYW1ld29yay1kZXZlbG9wZXJAbGlzdHMuc291 cmNlZm9yZ2UubmV0DQoJQmV0cmVmZjogW1NwcmluZ2ZyYW1ld29yay1kZXZlbG9wZXJdIEFwcGxp Y2F0aW9uRXZlbnRNdWx0aWNhc3Rlcg0KCQ0KCQ0KCUhpIEp1ZXJnZW4sDQoJDQoJR29vZCB3b3Jr IG9uIHRoZSBuZXcgZXZlbnQgbXVsdGljYXN0ZXIgZW5oYW5jZW1lbnRzIQ0KCUkgbm90aWNlZCB0 aGF0IHlvdSBsb29rIGluIHRoZSBjb250YWluZXIgZm9yIGEgYmVhbiBjYWxsZWQgJ2FwcGxpY2F0 aW9uRXZlbnRNdWx0aWNhc3RlcicgdG8gcmVzb2x2ZSB0aGUgbXVsdGljYXN0ZXIgdG8gdXNlLiAg QSBzbWFsbCBwb2ludCwgYnV0IHdoeSBub3QganVzdCBsb29rIGZvciBhIGJlYW4gb2YgdHlwZSBB cHBsaWNhdGlvbkV2ZW50TXVsdGljYXN0ZXI/IElNSE8gbWFraW5nIGl0IGJlYW4gaWQgZGVwZW5k ZW50IGlzIHN1cGVyZmxvdXMgd2hlbiB0aGUgdHlwZSBjYW4gYmUgdXNlZC4gIEkndmUgYXR0YWNo ZWQgYSBtaW5vciBlbmhhbmNlbWVudCB0byB0aGUgQWJzdHJhY3RDb250YWluZXJDb250ZXh0IHRv IHJlbW92ZSB0aGUgbmFtaW5nIHJlcXVpcmVtZW50IGZvciB0aGUgZXZlbnQgbXVsdGljYXN0ZXIg SklDIDotKSAgSSd2ZSBhbHNvIHJ1biBhbGwgdGhlIHRlc3RzIHdpdGhvdXQgZmFpbHVyZXMuDQoJ DQoJQ2hlZXJzLA0KCQ0KCVJvc3MNCgkNCgkNCgkNCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoJVGhpcyBTRi5OZXQgZW1haWwgc3BvbnNv cmVkIGJ5IEJsYWNrIEhhdCBCcmllZmluZ3MgJiBUcmFpbmluZy4NCglBdHRlbmQgQmxhY2sgSGF0 IEJyaWVmaW5ncyAmIFRyYWluaW5nLCBMYXMgVmVnYXMgSnVseSAyNC0yOSAtDQoJZGlnaXRhbCBz ZWxmIGRlZmVuc2UsIHRvcCB0ZWNobmljYWwgZXhwZXJ0cywgbm8gdmVuZG9yIHBpdGNoZXMsDQoJ dW5tYXRjaGVkIG5ldHdvcmtpbmcgb3Bwb3J0dW5pdGllcy4gVmlzaXQgd3d3LmJsYWNraGF0LmNv bQ0KCV9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQoJU3By aW5nZnJhbWV3b3JrLWRldmVsb3BlciBtYWlsaW5nIGxpc3QNCglTcHJpbmdmcmFtZXdvcmstZGV2 ZWxvcGVyQGxpc3RzLnNvdXJjZWZvcmdlLm5ldA0KCWh0dHBzOi8vbGlzdHMuc291cmNlZm9yZ2Uu bmV0L2xpc3RzL2xpc3RpbmZvL3NwcmluZ2ZyYW1ld29yay1kZXZlbG9wZXINCgkNCg0K |
|
From: <jue...@we...> - 2004-07-03 10:57:48
|
I've just finished all remaining OJB support infrastructure features: = PersistenceBrokerTransactionManager can expose JDBC transactions now, = there's a PersistenceBrokerDaoSupport class, and there's a = LocalDataSourceConnectionFactory helper that allows to use a = Spring-managed DataSource bean as OJB connection factory. =20 LocalDataSourceConnectionFactory works with a static field, which is = clearly not ideal but forced by OJB's static initializer model. The OJB = guys told me that they are gonna address this for OJB 1.1, so the = current implementation is hopefully just an intermediate solution. =20 Note that an "Open PersistenceBroker in View" pattern is not necessary = with OJB: It simply fetches a new Connection for lazy loading rather = than depending on the original PersistenceBroker still being open. I've = not actually tested this, but it was pointed out in the TSS thread. =20 I'll provide an OJB data access implementation for Petclinic in the = course of this weekend, as an example for OJB PersistenceBroker = integration. I don't assume that this is more than 4 hours of work. I'll = also verify the lazy loading assumptions there. Furthermore, I'll = provide a test suite for the OJB support in the course of next week. =20 The only further JAR that we need to ship for building the OJB = integration and running the sample should be db-ojb-1.0.0 jar (~800 KB). = I guess that's OK for the -with-dependencies download. It is certainly = desirable to show that we support OJB out-of-the-box just like = Hibernate. =20 Early feedback welcome :-) =20 Juergen =20 ________________________________ Von: spr...@li... im Auftrag = von j=FCrgen h=F6ller [werk3AT] Gesendet: Fr 02.07.2004 21:02 An: spr...@li... Betreff: [Springframework-developer] OJB support Hi everybody, On the occasion of the recent TSS thread on OJB 1.0 final, I've decided = to give OJB PersistenceBroker integration a go. I've already committed = the initial bunch a couple of hours ago, providing = PersistenceBrokerTemplate, PersistenceBrokerTransactionManager, etc. This initial stuff took just about 4 hours, including getting OJB to = work with a simple example! I was pleasantly surprised by how easy OJB = is to set up. I'm not fond really fond of its static initializer model, = but it does work and is simple enough to get going. I'm currently working on support for exposing the JDBC Connection in = PersistenceBrokerTransactionManager and other refinements. I plan to add = a Petclinic data access version for OJB this weekend: As far as I can = judge at this point of time, this should be simple enough to do. One of the distinct characteristics of OJB's PersistenceBroker is that = it offers all of OJB's mapping and querying capabilities, but does not = attempt to provide object-level transactions, i.e. does not do automatic = change detection but rather rely on explicit store calls. For = Petclinic-style web apps, this is more than enough. The stuff in CVS does work already, so whoever's interested, feel free = to have a look at it :-) Juergen ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |