Hi Sven,

If you file the bug then yes, we can look at it for 8u20 (there is no "earlier").

And thanks to Petr for providing the evaluation for this.

-- Kevin


Sven Reimers wrote:
Ok.

Will file an issue and if possible create a patch.

Any this could end up in 8u20 (or earlier)?

Thanks

-Sven
Am 17.03.2014 11:05 schrieb "Petr Pchelko" <petr.pche...@oracle.com>:

Ok, I see.

This is the problem in FX interop.
In javafx.embed.swing.SwingDnD.DnDTransferable class. It's wrapper that
wraps the FX dragboard into the Swing Trasferable.
It is a simple class and many features are simply not implemented. The
implementation is very basic - it just creates the DataFlavor with the
mime-type corresponding to the DataFormat mime-type. However it does not
take into account the representation class. This works fine for basic types
like text or may be image, but it completely does not work for custom types
with custom representation classes.

You could file a bug for this.

With best regards. Petr.

On 17.03.2014, at 13:39, Sven Reimers <sven.reim...@gmail.com> wrote:

The problem seems to be in AbstractDragSource in SceneBuilder. It defines
a javafx.scene.input.DataFormat.
This seems to cause problems if running embedded in Swing. I do not define
my own DataFlavors..

Any further help appreciated..

-Sven
Am 17.03.2014 09:54 schrieb "Petr Pchelko" <petr.pche...@oracle.com>:

Hello, Sven.

Looks like you are not specifying the representation class for the
DataFlavor and it defaults
to the InputStream. So, scene builder puts a ByteBuffer while the
DataTransferer is trying to treat it as an
InputStream.

Could you please try to explicitly specify the representation class in
the DataFlavor you are trying to put?
Like this: new DataFlavor("scene.builder/internal;
class=java.nio.HeapByteBuffer", "SceneBuilder internal DF"")

With best regards. Petr.

On 17.03.2014, at 0:13, Sven Reimers <sven.reim...@gmail.com> wrote:

Ok... figured it out. It seems scene.builder.internal crashes the Swing
parsing mechanism for mime types in the data transfer. Changing it to
scene.builder/internal fixes this problem.

Shall I open an issue in Jira for it?

Having fixed this I get another problem :-(
(see stacktrace below)

Not sure how to fix this... investigating now.

-Sven

java.lang.ClassCastException: java.nio.HeapByteBuffer cannot be cast to
java.io.InputStream
at

sun.awt.datatransfer.DataTransferer.translateTransferable(DataTransferer.java:1372)
at

sun.lwawt.macosx.CDataTransferer.translateTransferable(CDataTransferer.java:131)
at sun.awt.datatransfer.DataTransferer$6.run(DataTransferer.java:2380)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:744)
at java.awt.EventQueue.access$400(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:697)
at java.awt.EventQueue$3.run(EventQueue.java:691)
at java.security.AccessController.doPrivileged(Native Method)
at

java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
at

java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.awt.EventQueue$4.run(EventQueue.java:719)
at java.awt.EventQueue$4.run(EventQueue.java:717)
at java.security.AccessController.doPrivileged(Native Method)
at

java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:716)
at

org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:159)
at

java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at

java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at

java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)


On Sun, Mar 16, 2014 at 8:30 PM, Sven Reimers <sven.reim...@gmail.com
wrote:

Hi guys,

hope someone can help me with the exception pasted below.

Any idea how to go on from here?

The code is available at
https://bitbucket.org/sreimers/nbscenebuilder/
Thanks

-Sven

java.lang.IllegalArgumentException: failed to
parse:scene.builder.internal
at java.awt.datatransfer.DataFlavor.<init>(DataFlavor.java:488)
at

javafx.embed.swing.SwingDnD$DnDTransferable.getTransferDataFlavors(SwingDnD.java:398)
at

sun.awt.datatransfer.DataTransferer.getFormatsForTransferable(DataTransferer.java:655)
at

sun.awt.dnd.SunDragSourceContextPeer.startDrag(SunDragSourceContextPeer.java:131)
at

sun.lwawt.macosx.CDragSourceContextPeer.startDrag(CDragSourceContextPeer.java:88)
at java.awt.dnd.DragSource.startDrag(DragSource.java:321)
at java.awt.dnd.DragSource.startDrag(DragSource.java:426)
at java.awt.dnd.DragGestureEvent.startDrag(DragGestureEvent.java:237)
at javafx.embed.swing.SwingDnD.startDrag(SwingDnD.java:284)
at javafx.embed.swing.SwingDnD.access$1000(SwingDnD.java:73)
at javafx.embed.swing.SwingDnD$4$1.run(SwingDnD.java:249)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:744)
at java.awt.EventQueue.access$400(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:697)
at java.awt.EventQueue$3.run(EventQueue.java:691)
at java.security.AccessController.doPrivileged(Native Method)
at

java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:714)
at

org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:159)
[catch] at

java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at

java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at

java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

--
Sven Reimers

* Senior Expert Software Architect
* NetBeans Dream Team Member: http://dreamteam.netbeans.org
* Community Leader  NetBeans: http://community.java.net/netbeans
                             Desktop Java:
http://community.java.net/javadesktop
* JUG Leader JUG Bodensee: http://www.jug-bodensee.de
* Duke's Choice Award Winner 2009
* Blog: https://www.java.net//blog/sven

* XING: https://www.xing.com/profile/Sven_Reimers8
* LinkedIn: http://www.linkedin.com/in/svenreimers

Join the NetBeans Groups:
* XING: http://www.xing.com/group-20148.82db20
* NUGM: http://haug-server.dyndns.org/display/NUGM/Home
* LinkedIn: http://www.linkedin.com/groups?gid=1860468
                  http://www.linkedin.com/groups?gid=107402
                  http://www.linkedin.com/groups?gid=1684717
* Oracle: https://mix.oracle.com/groups/18497


--
Sven Reimers

* Senior Expert Software Architect
* NetBeans Dream Team Member: http://dreamteam.netbeans.org
* Community Leader  NetBeans: http://community.java.net/netbeans
                             Desktop Java:
http://community.java.net/javadesktop
* JUG Leader JUG Bodensee: http://www.jug-bodensee.de
* Duke's Choice Award Winner 2009
* Blog: https://www.java.net//blog/sven

* XING: https://www.xing.com/profile/Sven_Reimers8
* LinkedIn: http://www.linkedin.com/in/svenreimers

Join the NetBeans Groups:
* XING: http://www.xing.com/group-20148.82db20
* NUGM: http://haug-server.dyndns.org/display/NUGM/Home
* LinkedIn: http://www.linkedin.com/groups?gid=1860468
                  http://www.linkedin.com/groups?gid=107402
                  http://www.linkedin.com/groups?gid=1684717
* Oracle: https://mix.oracle.com/groups/18497

Reply via email to