[prev in list] [next in list] [prev in thread] [next in thread]
List: openjdk-openjfx-dev
Subject: Re: How to access com.sun.webkit.network.CookieManager at JDK 10?
From: Kevin Rushforth <kevin.rushforth () oracle ! com>
Date: 2018-08-24 14:18:34
Message-ID: 99c38254-b096-0a9b-a0f4-e628f42794a1 () oracle ! com
[Download RAW message or body]
You probably already know this, but using internal interfaces is fragile
and can change or break at any time and without notice.
-- Kevin
On 8/24/2018 7:11 AM, Nir Lisker wrote:
> Sorry, my reply was not phrased well. Whether you declare a
> module-info.java or not, you still have to add-exports either via command
> line or during runtime. What I meant with not needing to declare a
> dependency in module-info.java is that you don't need a 'requires' (or
> add-reads) because the unnamed module reads everything be default.
>
> So, in your case you need a command line "--add-exports
> javafx.web/com.sun.webkit.network=my.app.Test" (or the equivalent runtime
> code) and "requires javafx.web" in the module-info.java. The latter is
> what's not needed if you don't declare a module.
>
> - Nir
>
> On Fri, Aug 24, 2018 at 4:43 PM Miroslav Nachev <
> mnachev.nscenter.eu@gmail.com> wrote:
>
> > Now I adopted the application to be module, adding this:
> > module my.app.Test {
> > requires controlsfx;
> > requires javafx.base;
> > requires javafx.controls;
> > }
> >
> > What is the next step?
> >
> >
> > On Fri, Aug 24, 2018 at 4:02 PM Nir Lisker <nlisker@gmail.com> wrote:
> >
> > > Hi Miro,
> > >
> > > Can I use the 2nd option with declaration in the source code, or the only
> > > > possible option is to pass as parameter when starting the application?
> > > >
> > > If your app is not a module then you don't have a module-info.java in
> > > your source code to declare the dependency. What you can do is export a
> > > package during runtime with the addExports method [1].
> > >
> > > [1]
> > > https://docs.oracle.com/javase/10/docs/api/java/lang/Module.html#addExports(java.lang.String,java.lang.Module)
> > >
> > > On Fri, Aug 24, 2018 at 12:38 PM Miroslav Nachev <
> > > mnachev.nscenter.eu@gmail.com> wrote:
> > >
> > > > Hi Arun,
> > > >
> > > > Thank you. I'm already using the first option, but then I need to access
> > > > other methods and classes that are not available.
> > > > Can I use the 2nd option with declaration in the source code, or the only
> > > > possible option is to pass as parameter when starting the application?
> > > >
> > > >
> > > > Miro.
> > > >
> > > > On Fri, Aug 24, 2018 at 12:04 PM Arunprasad Rajkumar <
> > > > arunprasad.rajkumar@oracle.com> wrote:
> > > >
> > > > > Hello Miro,
> > > > >
> > > > > CookieManager is a module private class, which is not exposed to
> > > > outside.
> > > > > I could think of two options,
> > > > >
> > > > > 1. com.sun.webkit.network.CookieManager is a type of
> > > > > java.net.CookieHandler, that means after instantiating WebEngine, you
> > > > can
> > > > > call CookieHandler.getDefault() to get the instance of CookieManager.
> > > > > new WebEngine();
> > > > > CookieHandler cookieHandler = CookieHandler.getDefault(); //
> > > > This
> > > > > will be an instance of com.sun.webkit.network.CookieManager
> > > > >
> > > > > 2. Export the module private implementation using
> > > > > "--add-exports=javafx.web/com.sun.webkit.network=ALL-UNNAMED"
> > > > >
> > > > > Thanks,
> > > > > Arun
> > > > >
> > > > > > On 24-Aug-2018, at 12:27 PM, Miroslav Nachev <
> > > > > mnachev.nscenter.eu@gmail.com> wrote:
> > > > > > Hi,
> > > > > >
> > > > > > I have apps that work well on JDK8, but on JDK10 I do not have
> > > > access to
> > > > > > some classes, for example, com.sun.webkit.network.CookieManager. This
> > > > > class
> > > > > > is the only one, that is up to date (RFC 6265) and is part of Java.
> > > > The
> > > > > > java.net.CookieManager class is obsolete: RFC 2965. The Cookie
> > > > solution
> > > > > in
> > > > > > Apache HttpComponents is very complicated, difficult to use, and is
> > > > > mostly
> > > > > > not compatible with JDK and JavaFX.
> > > > > > In fact, I use JavaFX CookieManager in the following 3 scenarios:
> > > > > >
> > > > > > - When using WebEngine (JavaFX 8).
> > > > > > - JavaFX Desktop App to store frequently used words in text and
> > > > other
> > > > > > fields (TextField, etc.).
> > > > > > - To store session parameters in JavaFX Desktop Clients that uses
> > > > REST
> > > > > > WS or Web Sockets to connect to the Web Server (App Server).
> > > > > >
> > > > > > Is there any way to enable access to
> > > > com.sun.webkit.network.CookieManager
> > > > > > at JDK 10?
> > > > > >
> > > > > >
> > > > > > Regards,
> > > > > > Miro.
> > > > >
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic