db-jdo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jörg von Frantzius <joerg.von.frantz...@artnology.com>
Subject Re: Tests for execution in managed environments / J2EE containers?
Date Wed, 14 Dec 2005 18:33:34 GMT
Craig L Russell schrieb:
> The TCK tests are designed to test the functionality of JDO in J2SE 
> environments, as this is where the spec is focused. There are no spec 
> requirements of a JDO implementation with regard to behavior inside a 
> container (there is no contract that is required on either the 
> container side or the JDO side).
The spec says in "2.3 Goals":

    The JDO architecture uses the J2EE Connector Architecture to make it
    applicable to all J2EE platform compliant application servers from
    multiple vendors.

Maybe the provision of a JCA adapter is optional, but is it that only 
mandatory requirements are tested in the TCK?
> Most JDO implementations use a non-standard way to configure the web 
> environment (such as a non-Java Connector Architecture resource) 
> mainly because the Java Connector Architecture resource requirements 
> are overkill for most applications.
I'm not so sure about that. We're not talking about simple 
Servlet-engines here, but application servers, which provide e.g. JMS. 
In order to be able to transactionally send JMS messages and modify data 
within the same transaction, integration in the JTA is a must, and most 
of the times done via JCA, I think. In my experience, use of JCA is very 
common when application servers are used.
> It's also not clear what the TCK test suite would actually do.
It should simply assure that retrieving and modifying data works within 
the container. When I tried that with JPOX 1.1.0-beta-5 and JBoss 4.0.3 
SP1, I was suprised to see lots of bugs, probably mostly because this is 
not covered by any JUnit tests yet. There could e.g. these two varations 
be tested to assure transaction enlisting works:

    * first create a PM, then begin a UserTransaction, retrieve and
      modify some data, commit the UserTransaction and verify the data
      was written to DB (JPOX currently fails here for me)
    * first begin a UserTransaction, then create a PM, retrieve and
      modify some data, commit the UserTransaction and verify the data
      was written to DB

There are some other scenarious involving EJBs to be found in 16.1.3 of 
the PFD spec, just look for "How to test?" comments in that chapter ;-)

Maybe it is theoretically possible to have enlisting in JTA transactions 
without using JCA, I don't know. That could be tested by deploying a 
different configuration of the appserver (without .rar).

Testing advanced features like XA and 2PC would be really great, if not 
only by providing an example of how to configure the reference 
implementation for that... (does JPOX do XA and 2PC?)
>
> That said, I think it's worth a discussion if you have some ideas of 
> the scope and environment of such tests.
Please see my other mail for an idea of how to include an appserver in 
the tests (how feasible ever it is...)
>> I'd think that a majority of the JDO users are writing web 
>> applications and need to run their stuff in an application server.
>
> True, but the TCK will likely not be normative as to the configuration 
> of the JDO implementation inside the specific container environment.
It could look for some .rar and accompanying *ds.xml file and deploy 
them if found. If there are none, maybe the implementation has found a 
way to plug into JTA.
> The TCK is not for end users, but rather for JDO implementations to 
> help them make sure that they are compliant with the specification. I 
> think the major value of the TCK for end users is to make sure that 
> their vendor passes it.
Right. So at the moment as an end-user you can't really know whether 
that implementation will do what you need it for, i.e. work inside an 
appserver.

Best regards,

Jörg.

P.S.
How come you can send those nice HTML mails, mine were always rejected 
by the mailserver?
>
> Best regards,
>
> Craig
>>
>>
>> erik@jpox.org <mailto:erik@jpox.org> schrieb:
>>> No.
>>>
>>> Quoting Jörg von Frantzius <joerg.von.frantzius@artnology.com 
>>> <mailto:joerg.von.frantzius@artnology.com>>:
>>>
>>>   
>>>> Hi,
>>>>
>>>> does the TCK currently include any tests for managed environments?
>>>>
>>>> Thanks for information,
>>>> Jörg
>>>>
>>>> --
>>>> __________________________________________________________
>>>> Dipl.-Inf. Jörg von Frantzius  |            artnology GmbH
>>>>                                |                Milastr. 4
>>>> Tel +49 (0)30 4435 099 26      |              10437 Berlin
>>>> Fax +49 (0)30 4435 099 99      |  http://www.artnology.com
>>>> _______________________________|__________________________
>>>>
>>>>
>>>>     
>>>
>>>
>>>
>>>
>>>
>>>   
>>
>>
>> -- 
>> __________________________________________________________
>> Dipl.-Inf. Jörg von Frantzius  |            artnology GmbH
>>                               |                Milastr. 4
>> Tel +49 (0)30 4435 099 26      |              10437 Berlin
>> Fax +49 (0)30 4435 099 99      |  http://www.artnology.com
>> _______________________________|__________________________
>>
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!
>


-- 
__________________________________________________________
Dipl.-Inf. Jörg von Frantzius  |            artnology GmbH
                               |                Milastr. 4
Tel +49 (0)30 4435 099 26      |              10437 Berlin
Fax +49 (0)30 4435 099 99      |  http://www.artnology.com
_______________________________|__________________________


Mime
View raw message