Re: Help upgrading 3.0.2 code to 4.2.2

Ricardo Parada <[email protected]> Tue, 28 Oct 2025 00:01:02 -0400
Newsgroups gmane.comp.java.cayenne.user
Message-ID <[email protected]>
Hi Giulio,

I=E2=80=99m interested to see how it goes. Please report back if you can.=20=


I=E2=80=99ve been playing with 5.0-M1.=20


Thank you
Ricardo Parada



> On Oct 26, 2025, at 3:22=E2=80=AFPM, [email protected] wrote:
>=20
> =EF=BB=BFI just got back to my project, trying to finalize the upgrade, an=
d I
> find out there is a brand new version of Cayenne available.
> I am going to try to jump directly from 3.0.2 to 5.0-M1. =F0=9F=8E=A2
> Wish me luck! =F0=9F=A4=B9
>=20
> Giulio Cesare
>=20
>> On Sat, Oct 4, 2025 at 10:29=E2=80=AFAM [email protected]
>> <[email protected]> wrote:
>>=20
>> Thanks Michael,
>> I now need to find how to rewire what I was previously doing mostly
>> using the org.apache.cayenne.conf package.
>> I suppose this is part of the friction I'll have to go through to get
>> a plain Jar (with Jetty).
>>=20
>> Thanks for the pointer.
>>=20
>> Giulio Cesare
>>=20
>>> On Wed, Oct 1, 2025 at 9:16=E2=80=AFPM Michael Gentry <[email protected]=
om> wrote:
>>>=20
>>> Hi Giulio,
>>>=20
>>> In 4.2, you get the ObjectContext from the Cayenne Runtime:
>>>=20
>>> https://cayenne.apache.org/docs/4.2/getting-started-guide/#getting-start=
ed-with-objectcontext
>>>=20
>>> mrg
>>>=20
>>> On Wed, Oct 1, 2025 at 5:23=E2=80=AFAM [email protected] <
>>> [email protected]> wrote:
>>>=20
>>>> Hello,
>>>> I have been able to fix almost all the warnings and errors.
>>>> I have to points that I am not able to fix, though:
>>>> - I was still using DataContext (instead of ObjectContext); is this
>>>> still a useful class? Otherwise, how do I create a DataContext, as
>>>> `DataContext.createDataContext();` is not defined
>>>> - how do I replace the use of ServletUtil.initializeSharedConfiguration=
?
>>>>=20
>>>> Thanks,
>>>> Giulio Cesare
>>>>=20
>>>> On Tue, Sep 30, 2025 at 3:50=E2=80=AFPM [email protected]
>>>> <[email protected]> wrote:
>>>>>=20
>>>>> Thanks Andrus!
>>>>>=20
>>>>> I'll report on any progress with my upgrade.
>>>>>=20
>>>>> Giulio Cesare
>>>>>=20
>>>>> On Tue, Sep 30, 2025 at 2:26=E2=80=AFPM Andrus Adamchik <aadamchik@gma=
il.com>
>>>> wrote:
>>>>>>=20
>>>>>> Hi Giulio,
>>>>>>=20
>>>>>> SelectQuery is replaced with ObjectSelect. But in your case (a query
>>>> modeled in the DataMap), you would actually use something else - a
>>>> MappedSelect query per
>>>> https://cayenne.apache.org/docs/4.2/cayenne-guide/#mappedselect-and-map=
pedexec
>>>>>>=20
>>>>>> MappedSelect.query("attachment", Attachment.class)
>>>>>>    .param("reference", aReference)
>>>>>>    .param("user", anUser)
>>>>>>    .select(context);
>>>>>>=20
>>>>>> Thanks,
>>>>>> Andrus
>>>>>>=20
>>>>>>=20
>>>>>>> On Sep 30, 2025, at 3:15=E2=80=AFAM, [email protected] wrote:
>>>>>>>=20
>>>>>>> Hello everybody,
>>>>>>>=20
>>>>>>> even if this will force me to admit how old I am, I still have some
>>>>>>> Cayenne 3.0.2 code happily running in production with no issues.
>>>>>>>=20
>>>>>>> Lately I was trying to upgrade the application from a WAR (running i=
n
>>>>>>> Tomcat) to a standalone application exposing the servlets via Jetty,=

>>>>>>> in order to make the application easier to deploy in a docker
>>>>>>> container.
>>>>>>>=20
>>>>>>> After some struggle to update the model, I am now facing a LOT of
>>>>>>> deprecation warnings like this:
>>>>>>>> [deprecation] SelectQuery in org.apache.cayenne.query has been
>>>> deprecated
>>>>>>>=20
>>>>>>> The code I have looks like this:
>>>>>>> -------------------
>>>>>>> prototypeQuery =3D
>>>>>>>=20
>>>> (SelectQuery)dataContext.getEntityResolver().lookupQuery("attachment");=

>>>>>>>=20
>>>>>>> parameters =3D new HashMap();
>>>>>>> parameters.put("reference", aReference);
>>>>>>> parameters.put("user", anUser);
>>>>>>> query =3D prototypeQuery.queryWithParameters(parameters);
>>>>>>>=20
>>>>>>> result =3D (List<Attachment>)dataContext.performQuery(query);
>>>>>>> -------------------
>>>>>>>=20
>>>>>>> Unfortunately I never had the opportunity to use any newer version o=
f
>>>>>>> Cayenne, so I haven't followed along with all the changes that it ha=
s
>>>>>>> gone through.
>>>>>>>=20
>>>>>>> Is there anyone willing to suggest me what the above code snippet
>>>>>>> would look like with the new version of Cayenne?
>>>>>>>=20
>>>>>>> Thanks,
>>>>>>>=20
>>>>>>> Giulio Cesare
>>>>>>=20
>>>>=20