Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[jakarta.ee-community] Java Records and Jakarta EE

I am changing the subject line and expanding the audience. I hope that is OK.

There are a number of specifications that should do due diligence with regards to alignment with Records in detail such as: JSON Binding, XML Binding, Persistence, Faces, Bean Validation and CDI.

Otherwise, someone should undertake the effort to write a series of tests to ensure things work correctly with scenarios involving these APIs and even perhaps throughout others too such as Jakarta REST and Messaging. This has been in my to-do list but frankly my bandwidth is not infinite for a middle aged developer with a demanding day job and a family. Some help would be most welcome.

Here is some preliminary analysis and discussion for Persistence: https://github.com/kalgon/jpa-records/issues/1. The gist is that I don’t think Persistence needs to do anything right now, but there may be value in looking into a standard utility that can convert to and from Records.

Reza Rahman
Jakarta EE Ambassador, Author, Blogger, Speaker

Please note views expressed here are my own as an individual community member and do not reflect the views of my employer.
 

From: jakarta.ee-community <jakarta.ee-community-bounces@eclipseorg> on behalf of Ivar Grimstad <ivar.grimstad@xxxxxxxxxxxxxxxxxxxxxx>
Sent: Saturday, December 4, 2021 3:32 AM
To: Jakarta EE community discussions
Subject: Re: [jakarta.ee-community] [jakartabatch-dev] Proposal - Use Java 11 source/target level for Batch 2.1
 
So, I'm kind of interested in turning this discussion around a little.

Given:
- You can develop your application with Java 17
- You can deploy your application to a Jakarta EE implementation that is certified and runs on Java 17
- This means that your application can use all Java 17 features you want, compile, and run on Java 17

What Java 17 features would improve the Jakarta EE APIs, and which specification does it make sense to add them?

Here's one example: Full support for Records in Jakarta JSON Binding
Today, you can simulate the Java Bean pattern by prefixing the field names with "get", but this is kind of an annoying workaround:

public record Greeting(String getName, String getMessage) {} is serialized to { "name": "", "message": "" }

Anything else?

Ivar

On Sat, Dec 4, 2021 at 6:51 AM Adam Bien <abien@xxxxxxxxxxxxx> wrote:
Reza -> IMO Java 17 is a must!  My clients are already using Java 17. LTS reasons.

--adam

> On 3. Dec 2021, at 01:47, Reza Rahman <reza_rahman@xxxxxxxxx> wrote:
>
> I think this is fine.
>
> This is a bit of an aside but not sure if you would like to consider it:
>
> I am hearing a lot of grumbling about Jakarta EE 10 not base-lining on Java SE 17 while keeping Java SE 11 and Java SE 8 optional. The precedent for Java EE had been that it always supported the newest Java SE version possible at the time of finalization of a release. This expectation could be a possible source of the grumbling.
>
> I am curious to see if others have opinions on this?
>
> Reza Rahman
> Jakarta EE Ambassador, Author, Blogger, Speaker
>
> Please note views expressed here are my own as an individual community member and do not reflect the views of my employer.
>
> On 12/2/2021 11:50 AM, Scott Kurz wrote:
>> We need to decide what Java level to target for Batch 2.1.   Java 11 is the recommendation for the EE 10 platform, however since we still have not added any new APIs at this point we could still decide to go with our Java 8 level binaries from 2.0.
>> (This option is outlined in the platform release plan:   https://eclipse-ee4j.github.io/jakartaee-platform/jakartaee10/JakartaEE10ReleasePlan )
>>
>> I propose we use Java 11 for source/target to stay in synch with the platform.    If a user wants to remain on Java 8 they can just use the existing 2.0 API JAR. 
>>
>> Note in terms of language features I'm not sure we depend on anything more than Java 6 ?? still.   
>>
>> Any objections?
>>
>> If not, then, to add a bit of a further thought, I think we end up with this table worth keeping in mind:
>>
>>
>> Language Features:  Java 6?
>> javac target:  Java 11
>> TCK execution:   Java 11 + 17
>>
>> Thanks,
>> ------------------------------------------------------
>> Scott Kurz
>> WebSphere / Open Liberty Batch and Developer Experience
>> skurz@xxxxxxxxxx
>> --------------------------------------------------------
>>
>>
>>
>>
>> _______________________________________________
>> jakartabatch-dev mailing list
>>
>> jakartabatch-dev@xxxxxxxxxxx
>>
>> To unsubscribe from this list, visit
>> https://www.eclipse.org/mailman/listinfo/jakartabatch-dev
> _______________________________________________
> jakarta.ee-community mailing list
> jakartaee-community@xxxxxxxxxxx
> To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/jakarta.ee-community

_______________________________________________
jakarta.ee-community mailing list
jakarta.ee-community@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/jakarta.ee-community


--

Ivar Grimstad

Jakarta EE Developer Advocate | Eclipse Foundation Eclipse Foundation - Community. Code. Collaboration. 


Back to the top