[JDIC-541] JDIC 0.9.5 Desktop API broken in Java Web Start Created: 01/Sep/09  Updated: 01/Sep/09

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.desktop)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: icemank Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 541

 Description   

JDIC 0.9.5 Desktop API is broken in Java Web Start since it uses
ClassLoader.getSystemClassLoader() to load the platform specific service provider.
This will not work since the system class loader is unaware of the jars
downloaded by JWS. See the JWS FAQ:
http://java.sun.com/j2se/1.5.0/docs/guide/javaws/developersguide/faq.html#211
The correct way is to either use:
this.getClass().getClassLoader();

or

Thread.getCurrent().getContextClassLoader();

The latter may be the best solution since it is portable to all deployment
contexts (stand-alone, applet and web start).

This problem also affects the JDIC Tray API and JDIC FileTypes API.






[JDIC-522] JDICplus is Microsoft-only Created: 05/Jun/08  Updated: 05/Jun/08

Status: Open
Project: jdic
Component/s: JDIC general
Affects Version/s: 0.8.4
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: ronaldhughes Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 522

 Description   

JDICplus deviates from previous JDIC components in that it only works for Microsoft customers. This must
be a joke, right? The 'J' in JDIC doesn't stand for Microsoft, nor does it stand for Windows. Is this an
attempt to hijack JDIC from its original purpose?

The technology that makes up JDICplus might be interesting, but it belongs elsewhere. Please move it.






[JDIC-519] PopupMenu is shown behind the taskbar if the auto-hide taskbar is enabled When JDIC app is run using jdk 1.6 Created: 12/May/08  Updated: 12/May/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.tray)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: susmitha Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Java Archive File trayIconTest.jar    
Issuezilla Id: 519

 Description   
  • On Windows XP machine set, task bar to auto-hide
  • Run the attached test program using JDK > 1.6.0_02

java -cp trayIconTest.jar;jdic.jar test.jdic.JDICTrayIconTest

  • Goto System tray and right click on the icon:Magnifying glass
  • Notice that a menu with three options Login, About, Exit appers
  • Now move the mouse away from the task bar such it is hidden
  • Again, goto the System tray and right click on the Maginifying glass icon
  • Notice that this time the menu with three options is shown behind the taskbar

Workaround :

  • Use java.awt.TrayIcon (But this class is only available from jdk 1.6)
  • Applications that are using JDIC library and cannot use features of JDK 1.6
    will suffer because of this bug, when the app is run with JDK 1.6.
  • Application developers do not usually control the version of Java that is
    used by their users.
  • Also the same test case, works perfectly with JDK 1.5, so this behavior looks
    like a regression in quality.


 Comments   
Comment by susmitha [ 12/May/08 ]

Created an attachment (id=306)
Test class to show TrayIcon popup behind the task bar on jdk1.6.





[JDIC-501] Feature is disappeared and new Failure has arrived Created: 04/Jul/07  Updated: 04/Jul/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: lrcusts Assignee: michael_shan
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 501

 Description   

Feature is disappeared:
I have formerly used the jdic version (20060613) and there i had the possibility
to set the wished browser.
EngineManager bem = BrowserEngineManager.instance();
bem.setActiveEngine(BrowserEngineManager.IE);

Why this is no longer supported?

New Failure on Closing my App after using the WebBrowser:
Now i get folloan Exception..
java.lang.NullPointerException: null pData
at sun.awt.windows.WComponentPeer.hide(Native Method)
at java.awt.Component.removeNotify(Unknown Source)
at org.jdesktop.jdic.browser.WebBrowser.access$201(Unknown Source)
at org.jdesktop.jdic.browser.WebBrowser$2.run(Unknown Source)

and an windows-error for the ieembed.exe:
Die Anweisung in "0x004028f2" verweist auf Speicher in "0x00000030". Der Vorgang
"read" konnte nicht auf dem Speicher durchgeführt werden.......






[JDIC-499] WebBrowser component not functional on Vista Created: 11/Jun/07  Updated: 11/Jun/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: jsnodgrass Assignee: michael_shan
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: other
Platform: PC


Issuezilla Id: 499

 Description   

The WebBrowser component doesn't work on Vista. I get a grey panel instead of a
web browser control. The component works properly when I disable UAC in Vista or
run the application with administrator privileges.






[JDIC-492] JDIC browser component dies - checks reveal that IeEmbed.exe is no longer running Created: 20/Mar/07  Updated: 12/Oct/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: jannaude Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: PC


Issuezilla Id: 492

 Description   

Started app that contains two Jframes each with a WebBrowser component. IE
components works fine for a while displaying embedded Flash animations. After
some time, user notices that IE window is no longer being displayed. Subsequent
checks using Task Manager reveals that IeEmbed is no longer running. Calls to
WebBrowser components do not return errors or exceptions however.



 Comments   
Comment by jannaude [ 21/May/07 ]

Hi guys,

Any word on this issue? This is an urgent request.

Thanks,

Jan

Comment by jannaude [ 12/Oct/07 ]

Hi guys,

Could you please URGENTLY provide feedback on this, this affects a production
application. If you need anything more to resolve the matter, please contact me
at jnaude@fnb.co.za.

Thanks,

Jan Naude





[JDIC-484] hi how to i post issues in the forum Created: 18/Jan/07  Updated: 18/Jan/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: venkimani1 Assignee: abeginner
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: Other


Issuezilla Id: 484

 Description   

hi
I thought this should be the way to post issues with the forum and since your
name begins with abeginner ,i assume beginners like me assign things to you !
Well i am thankfull to all who had contributed and thinking of java as a
desktop tool is a cool feature ! I was embedding jdic browser in a notes form
in the form of applet ! notes has this weired formula language ...which can
change on refresh ....what i am trying to do is based on a field in notes form
the value of the field change based on the user input and based on it the url
is set to the browser ! everything was fine except if the refresh happens !
when refresh happens the applet is not reloaded (i understand that ) and the
jvm instance is still alive ....but the applet is disposed and reloaded and
cannot attach the available browser instance in the memory ! Also when the form
in domino is closed the applet is disposed off....but the browser instance
(IeEmbed.exe) invoked still resides and it won't go off untill notes client is
completely shut down and restarted ....is there a way to unload the invokation
on exit programatically than to allow the OS to work on that
thanks and hope some one will reply .....i did try dispose() in old
version ...removeNotify() etc but nothing took the instance out and as long as
it is there frequent loading of the same is not possible ...
thanks for the help in advance
venki






[JDIC-474] NullPointerException when using the default OSX browser Created: 05/Dec/06  Updated: 05/Dec/06

Status: Open
Project: jdic
Component/s: MacOS
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: jsvazic Assignee: elliotth
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Mac OS X
Platform: All


Issuezilla Id: 474

 Description   

When trying to create a new IBrowserInstance using the default browser on OSX, I
get the following stacktrace:

Exception in thread "EventThread" java.lang.IllegalArgumentException: Null
charset name
at java.nio.charset.Charset.lookup(Charset.java:430)
at java.nio.charset.Charset.forName(Charset.java:497)
at org.jdesktop.jdic.browser.internal.MsgClient.<init>(Unknown Source)
at org.jdesktop.jdic.browser.internal.NativeEventThread.run(Unknown Source)

Looking at the code I noticed that the org.jdesktop.jdic.browser.WebKitEngine
class returns null from it's getCharsetName() method, which is causing this
error to occur. Can this please be fixed by either returning a valid value or
consider using a call to Charset.defaultCharset() if the JDK version is 5.0 or
later?






[JDIC-453] JDIC hangs WINWORD when close Created: 03/Nov/06  Updated: 17/Nov/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: sergio_av Assignee: michael_shan
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: PC


Issuezilla Id: 453

 Description   

build: jdic-20060308-bin-windows
testcase: browser (included demo)

When an MS Word Document is opened by Browser demo app an instance of
WINWORD.exe can be found in the task manager. The word document is showed
correctly, but if you close the demo Browser app, WINWORD.exe still remains in
execution. Therefore if you execute again the Browser demo app and you attempt
to load the same MS Word Document a grey page will appear.

I have tried with other WebBrowser control client applications and I see
WINWORD.exe stops execution when the word document is closed.



 Comments   
Comment by sergio_av [ 09/Nov/06 ]

The same error with EXCEL files. I suppose this will happen to all kind of
documents opened from an extern process server ActiveX like WINWORD.exe and
EXCEL.exe.

Comment by sergio_av [ 16/Nov/06 ]

Any comment about this issue?

Comment by michael_shan [ 17/Nov/06 ]

Hi,
I've reproduced this issue. While the dealing of opening native apps are done by
Gecko,which we still don't know how to let it close them when exit. We still
need investigate on that and maybe mozilla guys know that better ..

thanks,
Michael

Comment by sergio_av [ 17/Nov/06 ]

Mozilla? I forgot to say that I use JDIC with IE 6.0 (IeEmbed.exe)





[JDIC-455] libtray.jnilib is not a Universal binary, so it fails on Intel Created: 07/Nov/06  Updated: 07/Nov/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.tray)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: robross Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Mac OS X
Platform: Macintosh


Attachments: Text File bugFix_455.diff    
Issuezilla Id: 455

 Description   

Current Mac build of the TrayIcon API doesn't include a universal jni binary, so
it fails on intel harware.

Btw, we need to add an OS item to distinguish between Mac OS PPC and Mac OS Intel.

Rob



 Comments   
Comment by robross [ 07/Nov/06 ]

Created an attachment (id=268)
patch to fix build script to create a universal binary jni lib file

Comment by michael_shan [ 07/Nov/06 ]

Thanks Rob, I've put "Wed Nov 8 02:16:00 +0000 2006: bugFix_455.diff" into cvs.





[JDIC-446] Build has a dependency that breaks on Mac OS Created: 13/Oct/06  Updated: 19/Oct/06

Status: Open
Project: jdic
Component/s: Misc Project
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: robross Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Text File build.xml.patch    
Issuezilla Id: 446

 Description   

The instructions for building this project (as given here:
https://jdic.dev.java.net/documentation/README.html#Build%20the%20Source

include this instruction:

Set javaws.jar to the class path, which is under jre_home/lib for java5+ and
jre/javaws for java1.4.2.

There is no such jar file in either the 1.4 or 1.5 JDK implementations on the
Mac; therefore it is impossible to build as-is on a Mac.

A work-around is to copy this jar file from a Windows JDK to the Mac.

However, this should not be a build dependency. If some functionality is
required from that lib that is not provided on all platforms, it needs to be
part of the source or lib distribution of the JDIC project so it can build on a Mac.

Rob Ross



 Comments   
Comment by lordy [ 19/Oct/06 ]

Not quite right, Mac OS X comes with javaws.jar file, you only need to find it: /Applications/Utilities/Java/
J2SE\ 5.0/Java\ Cache\ Viewer.app/Contents/MacOS/lib/javaws.jar

But it is right we should fix this problem that other user simple can use "ant buildall" without changing
build.xml by hand.

So please Michael import my patch.

Comment by lordy [ 19/Oct/06 ]

Created an attachment (id=254)
patch which add javaws.jar to classpath for Mac OS X

Comment by michael_shan [ 19/Oct/06 ]

Hi Chris,
I think we should let users specify the javaws.jar's location, since we can't
write version dependent info into the build.xml,thus,if users use different
version java,they will still meet errors, right?
Instead of doing that,I think it's better to clarify that clearly in the readme
to tell users to set the javaws.jar's location correctly,of course,correct path
of java5.0's will be given as a sample. Any suggestions? Thanks!

Michael

Comment by robross [ 19/Oct/06 ]

I think using a build.properties file might be helpful. In my own projects, I
use a build.properties file that is read by the main build.xml file, and I
include things that might be build-environment-dependent, so that it's easy to
tweak the build.properties file without having to change the build.xml file. For
example, on my webapp projects one of the properties might be tomcat.dir; thus,
I don't have to expect a specific location in the build.xml file, but each
developer can just write where their particular tomcat directory is located.

You could get the location of the javaws.jar file from this file, and then the
developer trying to build only has to adjust that property (or a small set of
properties).

Rob

Comment by michael_shan [ 19/Oct/06 ]

Yes, you're right. In fact,we use .bat or .sh file to set environment first then
call build.xml to build jdic. We'll upload them to the cvs.





[JDIC-442] WebBrowser not work in Win98 Created: 11/Oct/06  Updated: 18/Dec/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Improvement Priority: Blocker
Reporter: maicon_b Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows 98
Platform: PC


Issuezilla Id: 442

 Description   

The WebBrowser, in the new jdic version, not work in my Windows98 with IE6.

Command: java -cp ".;jdic.jar;demo/Browser" Browser
Return: Can't connect to the native embedded browser.
Error message: Maximum retry number reached!



 Comments   
Comment by maicon_b [ 25/Oct/06 ]

The new version does not support Windows 98.
Some old versions running properly.

Comment by michael_shan [ 31/Oct/06 ]

Hi Maicon,
It maybe caused by the nspr4.dll was removed. With the latest jdic version, you
can try to put "ielib" folder,which contains the dll, under the same folder of
jdic.jar to see if it can work well under win98. If it does, we'll contain the
folder for our new version. Thanks!

Michael

Comment by maicon_b [ 01/Nov/06 ]

Hi Michael,
I already tried this, with and without the 'ielib' folder,
with 2 copies of the nspr4.dll, one in /jdicfolder/ and the other
in /jdicfolder/ielib. But...
result: not work...

Thanks,
Maicon

Comment by michael_shan [ 02/Nov/06 ]

Hi Maicon,
Perhaps more debug/error info will be helpful, will you please dump that? And I
have to admit that I have no experience of running JDIC under win98 either I'm
not sure if it can run well.

Michael

Comment by maicon_b [ 03/Nov/06 ]

The following debug info is from the last version (20061102):

      • Jtrace: Envent Thread run once!
      • Jtrace: Msg Client new once!
      • Jtrace: Specified browserManager null
      • Jtrace: Default browserManager is used.
      • Jtrace: Found a free socket port: 1263
        native lib path C:\WINDOWS\Desktop\jdic-20061102-bin-win\windows*** Jtrace:
        init share native.....
      • Jtrace: nspr4.dll under C:\WINDOWS\Desktop\jdic-20061102-bin-
        win\windows\ielib is set to PATH
      • Jtrace: Engine initialize once!
        native lib path C:\WINDOWS\Desktop\jdic-20061102-bin-win\windows*** Jtrace:
        Executing C:\WINDOWS\Desktop\jdic-20061102-bin-win\windows\IeEmbed.exe -
        port=1263
      • Jtrace: Connecting to native browser ... 0
      • Jtrace: java.net.ConnectException: Connection refused: no further
        information
      • Jtrace: Connecting to native browser ... 1
      • Jtrace: java.net.ConnectException: Connection refused: no further
        information
      • Jtrace: Connecting to native browser ... 2
        ...
      • Jtrace: java.net.ConnectException: Connection refused: no further
        information
      • Jtrace: Connecting to native browser ... 29
      • Jtrace: java.net.ConnectException: Connection refused: no further
        information
        Can't connect to the native embedded browser. Error message: Maximum retry
        number reached!

Thank you very much!
Maicon

Comment by maicon_b [ 06/Nov/06 ]

Look the following logs:

Pieces of Debug:

      • Jtrace: Found a free socket port: 1094
      • Jtrace: Executing C:\WINDOWS\Desktop\jdic\IeEmbed.exe -port=1094

Netstat -an: (connections created by jdic - Browser)
Proto Local Address Extern Address State
TCP 0.0.0.0:1093 0.0.0.0:0 LISTENING
TCP 0.0.0.0:1102 0.0.0.0:0 LISTENING
TCP 127.0.0.1:1092 0.0.0.0:0 LISTENING
TCP 127.0.0.1:1092 127.0.0.1:1093 ESTABLISHED
TCP 127.0.0.1:1093 127.0.0.1:1092 ESTABLISHED
->TCP 127.0.0.1:1102 127.0.0.1:1094 SYN_SENT

The 127.0.0.1:1094 (from the last line) must not be a Extern, but a Local
Address... as in win XP

Thanks
Maicon

Comment by maicon_b [ 06/Nov/06 ]

If you go to windows XP command and type "ieEmbed -port=5555 <enter>" the
netstat inform a Listening port until any other program begin and finalize a
connection with the ieEmbed (ex: putty).

But on windows 98, the listining stay for more/less 10 seconds and it dies when
the ieEmbed is from the 0.9 version... And when the ieEmbed.exe is from the
0.9.1 version, the netstat not even shows the Listening.

Netstat shows: TCP 127.0.0.1:5555 0.0.0.0:0 LISTENING

Thanks,
Maicon

Comment by maicon_b [ 18/Dec/06 ]

Is possible to trace the differences between the new (0.9.1) and the old (0.9)
version of IeEmbed.exe ?
Is possible to create one compatible .exe with windows 98, analyzing the
differences ?

Thanks,
Maicon





[JDIC-413] Not possible to create a screenshot in init() method Created: 13/Jul/06  Updated: 13/Jul/06

Status: Open
Project: jdic
Component/s: Screensavers
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Improvement Priority: Blocker
Reporter: normanfo Assignee: markroth8
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 413

 Description   

In the screensaver's init() method it is not possible to create a screenshot
using java.awt.Robot (win xp). The screen is always black before the actual
screenshot can be taken. Some screensavers might want to use the current desktop
image and perform some visual manipulation of it.






[JDIC-94] Packager doen't work Created: 20/Sep/04  Updated: 29/Apr/05

Status: Open
Project: jdic
Component/s: Packager
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: conny Assignee: joey_shen
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Solaris
Platform: PC


Attachments: Text File resourcePath.patch    
Issuezilla Id: 94

 Description   

On Solairs jnlp2pkg command dose not work, the error message is: resource path
could not be null. On Linux the same thing happens.



 Comments   
Comment by joey_shen [ 20/Sep/04 ]

This is a regression introduced by the extension patch trying to fix issue 89.
Actually, only the local jnlp resourcepath input will be affected. remote jnlp
packager works fine. I'll submit a patch in a few minute.

Comment by joey_shen [ 20/Sep/04 ]

Created an attachment (id=63)
patch for this issue

Comment by conny [ 22/Sep/04 ]

On Solaris remote jnlp packager dose not work, following messages were printed
on the terminal: Cannot copy local directory: Cannot create new local file





[JDIC-61] Add taskBar Notification in Tray API Created: 20/Jul/04  Updated: 03/Mar/05

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.tray)
Affects Version/s: 0.8.4
Fix Version/s: None

Type: Improvement Priority: Blocker
Reporter: armoghan Assignee: bino_george
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 61

 Description   

It would be a great feature if Skinable Taskbar Notification is added in Tray
Icon functionality like MSN or Yahoo.



 Comments   
Comment by georgez [ 20/Jul/04 ]

Reassigned to the right subcomponent.

Comment by georgez [ 20/Jul/04 ]

Reassigned to Bino George, which is maintaining the Tray Icon incubator project.

Comment by georgez [ 08/Jan/05 ]

Reassigned to the "JDIC API (package org.jdesktop.jdic.tray)" subcomponent, as
from release 0.8.6, Tray Icon code/API was incorporated into JDIC. The "tray"
subcomponent is deleted.

Comment by georgez [ 08/Jan/05 ]

Reassigned to the "JDIC API (package org.jdesktop.jdic.tray)" subcomponent, as
from release 0.8.6, Tray Icon code/API was incorporated into JDIC. The "tray"
subcomponent is deleted.

Comment by georgez [ 03/Mar/05 ]

Should be an "Enhancement".





[JDIC-348] JDIC browser doesn't support heavyweight container hierarchy change Created: 06/Jan/06  Updated: 19/Jun/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: lilianc Assignee: michael_shan
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 348

 Description   

The JDIC Browser doesn't support changing its heavyweight ancestor : I'm
properly posting this issue here as the JDIC forum might not be the best place
to leave it (I reported the probem there 6 months ago).

Here's a test case showing the problem with a JFrame and a JDialog, but the
problem is the same ** when moving from an AWT Panel to another one **.

This feature is used in VLDocking and probably other docking systems to allow
embedding the JDIC Browser within lightweight components. It works well with
other heavywieght components (like JOGL or Open CASCADE 3D renderers) but fails
with JDIC Browser.

Best regards,

Lilian Chamontin, VLSolutions.

---------------------------------

Source Code :

package test.swing.docking;

import java.awt.*;
import java.awt.event.*;
import java.net.URL;
import javax.swing.*;
import org.jdesktop.jdic.browser.WebBrowser;

/** Test case showing wrong behaviour of WebBrowser when container hierarchy
change occurs.
*

  • To reproduce the bug, click on the Detach button. The webbrower will (well,
    should) be detached
  • from its parent frame and put into another window.
    *
  • Here the problem seems to be due to a change of the native parent peer (from a
    jframe to
  • a jdialog).
    *
  • If you move the JDialog you will see the browser moving... inside the JFrame !
    *
  • I have also experimented the same problem when I insert a Panel (awt) in
    between the hierarchy
  • (thus also changing the native parent of the browser).
    *
  • @author Lilian Chamontin, VLSolutions
    */
    public class TestJDIC2 extends JFrame {
    WebBrowser browser;

JPanel center = new JPanel(new BorderLayout());

public TestJDIC2() {
setDefaultCloseOperation(EXIT_ON_CLOSE);
add(center, BorderLayout.CENTER);
add(new JLabel("left"), BorderLayout.WEST);
add(new JLabel("bottom"), BorderLayout.WEST);
add(new JLabel("right"), BorderLayout.EAST);

try {
URL url = new URL("http://www.google.com");

browser = new WebBrowser(url, false);
center.add(browser, BorderLayout.CENTER);
} catch (Exception e){
e.printStackTrace();
}

JButton detach = new JButton("Detach");
detach.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)

{ center.remove(browser); JDialog dlg = new JDialog(TestJDIC2.this); dlg.getContentPane().add(browser, BorderLayout.CENTER); dlg.setSize(new Dimension(400,300)); dlg.validate(); dlg.setVisible(true); center.revalidate(); } }); add(detach, BorderLayout.NORTH); center.setPreferredSize(new Dimension(800,600)); pack(); setVisible(true); }

public static void main(String[] args){
new TestJDIC2();
}
}



 Comments   
Comment by michael_shan [ 06/Jan/06 ]

Hi Lilian,
Thank you for your reporting.
At first glance,I don't think it's a webBrowser problem but a problem of Canvas
or the way we use it.
A component refer a component then put the refered component into another
component(though we've removed it,but will it works as we thought?), is that
operation ok? I'm not sure of that.

Comment by lilianc [ 06/Jan/06 ]

Hi Michael,

The code posted here works fine with any Swing or AWT component, and also works
with canvases like the GLCanvas from JOGL... There's nothing uncommon in it,
it's just an AWT component reparenting.

Reparenting a component (beeing awt or swing) is something found in every
advanced application (for example, extracting a component from a window to give
it more room on screen or mergeing two components in a tabbed pane).

The problem here occurs only if the hierarchy change involves an AWT container
(Frame, Panel), but works fine with a swing JPanel (e.g. when swapping two
JSplitPane components).

Lilian

Comment by michael_shan [ 23/Jan/06 ]

Hi,
Change "browser = new WebBrowser(url, false)"; to "browser = new WebBrowser(url,
true);"
Pls refer the javadoc :
/**

  • Constructs a new <code>WebBrowser</code> with an specified URL and
  • boolean flag to indicate the dispose schema.
  • @param url
  • the URL to be shown in this instance.
  • @param autoDispose
  • ture to indicate this instance will automatically dispose
  • itself in <code>removeNotify()</code>; false to indicate
  • the developer should call <code>dispose()</code> when this
  • instance is no longer needed.
  • @see #removeNotify()
  • @see #dispose()
  • @see #isAutoDispose()
    */
    public WebBrowser(URL url, boolean autoDispose) {........}
Comment by lilianc [ 25/Jan/06 ]

The problem is that the browser shoudn't be auto-disposed !

If the user is in the middle of filling a form, the form will be cleared when
changing of parent (the page is reloaded) : this is unacceptable for our
customers...

(and if some applets are running in the web page, they will be destroyed as well).

Comment by michael_shan [ 19/Jun/06 ]

Assign to Michael.





[JDIC-295] Problem with extension-tag Created: 29/Jun/05  Updated: 29/Jun/05

Status: Open
Project: jdic
Component/s: Packager
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: madsheep Assignee: paul_huang
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: All


Issuezilla Id: 295

 Description   

The situation:

  • The main-jnlp is created by a servlet in the address:
    localhost/dir1/DownloadServlet
  • The extension-jnlp is created by a servlet in the address:
    localhost/dir1/ExtensionDownload.jnlp
  • All jars (including the ones from the extension) will be downloaded from:
    localhost/dir2 (Not sure if that's important but more informations won't harm)

The problem:
The packager creates a temp-directory where it copies the two jnlps and a
subdirectory 'dir2' where it copies the jar-files. Later it tries to find the
extension-jnlp in the subdirectory 'dir1', where it can't be:

java.io.FileNotFoundException:
C:\DOKUME~1\jschoder\LOKALE~1\Temp\jnlp54162jnlp\dir1\ExtensionDownload.jnlp
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
at java.io.FileInputStream.<init>(Unknown Source)
at sun.net.www.protocol.file.FileURLConnection.connect(Unknown Source)
at
com.sun.javaws.net.BasicNetworkLayer.doRequest(BasicNetworkLayer.java:164)
at
com.sun.javaws.net.BasicNetworkLayer.doGetRequest(BasicNetworkLayer.java:92)
at
com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(LaunchDescFactory.java:77)
at
org.jdesktop.jdic.packager.impl.JnlpPackageInfo.addJnlpRefFilePaths(Unknown Source)
at
org.jdesktop.jdic.packager.impl.JDICPackagerFileRefVisitor.visitExtensionDesc(Unknown
Source)
at com.sun.javaws.jnl.ExtensionDesc.visit(ExtensionDesc.java:80)
at com.sun.javaws.jnl.ResourcesDesc.visit(ResourcesDesc.java:490)
at
org.jdesktop.jdic.packager.impl.JnlpPackageInfo.addJnlpRefFilePaths(Unknown Source)
at
org.jdesktop.jdic.packager.impl.JnlpPackageInfo.parseLocalJnlpInfo(Unknown Source)
at
org.jdesktop.jdic.packager.impl.JnlpPackageInfo.parseRemoteJnlpInfo(Unknown Source)
at org.jdesktop.jdic.packager.impl.Jnlp2Package.parseArguments(Unknown
Source)
at org.jdesktop.jdic.packager.impl.Jnlp2Package.generatePackage(Unknown
Source)
at org.jdesktop.jdic.packager.Jnlp2Msi.main(Unknown Source)






[JDIC-254] WebBrowser doesn't pass cookies to popup - session lost Created: 12/Apr/05  Updated: 10/Jul/06

Status: Reopened
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.9
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: btknorr Assignee: michael_shan
Resolution: Unresolved Votes: 7
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: All


Attachments: Text File issue254_patch.diff    
Issuezilla Id: 254

 Description   

When using the WebBrowser api against a web application and the IE Browser
spawns a child popup window via javascript or some other means, the new child
browser window doesn't have a session. And in our web application this causes
the child window to go to a login screen – this issue is stopping us from
using the WebBrowser api.

This issue orginated by yangui:
http://www.javadesktop.org/forums/thread.jspa?messageID=71054&#71054



 Comments   
Comment by georgez [ 23/May/05 ]

Based on Stu Pond's fix, I created and attached a patch file (issue254_patch.diff).
The fix introduces one new class CBrowserFrameWindow to create and manage a
popup child window, which will reuse the session id of its parent windows.

Thanks, Pond !

Comment by georgez [ 23/May/05 ]

Created an attachment (id=188)
Pass parent window session ID to popup window.

Comment by armin_chen [ 13/Oct/05 ]

To solve this problem, we have to handle below event for IE:
DWebBrowserEvents2::NewWindow2 Event

There is some similar event for Mozilla.

Comment by michael_shan [ 24/Jan/06 ]

Assign to Michael

Comment by michael_shan [ 25/Jan/06 ]

Another post related with this issue.
http://www.javadesktop.org/forums/post!reply.jspa?messageID=68313

Comment by michael_shan [ 25/Jan/06 ]

Another post related with this issue.
http://www.javadesktop.org/forums/post!reply.jspa?messageID=68313

Comment by michael_shan [ 19/Jun/06 ]

Has been fixed in build20060613.

Comment by michael_shan [ 10/Jul/06 ]

Post http://forums.java.net/jive/thread.jspa?messageID=131355&#131355.
We are struggling with the "window.open loses cookie knowledge of opener" issue.
The recently released June build now opens new windows with the correct cookie
info, but they are:

1) Wrapped in a Java frame
2) Have 0,0 size.

Is there a way to call a "window.open" event in a WebBrowser object, and have
the new opening window be a valid IE frame in its own right, but with the cookie
knowledge of the Webbrowser frame?

Good work on this guys!





[JDIC-240] Design tasks - Pluggable Service Providers with Mustang Created: 21/Mar/05  Updated: 25/Jan/11

Status: Open
Project: jdic
Component/s: JDIC API general
Affects Version/s: current
Fix Version/s: None

Type: Task Priority: Blocker
Reporter: chas Assignee: paul_huang
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issue Links:
Dependency
blocks JDIC-220 Desktop API Tuning for Mustang Open
Issuezilla Id: 240

 Description   

The api/spi pluggable providers as implemented in Issue_74-78 envision a single
provider instance and static api methods. Issue 220 requests instance methods
on each service.

Will each service.getInstance() method return a singleton, or will multiple
service instances be created?

If/when the spi plug point is added, is there going to be a single provider
instance or a provider instance per service instance?

An additional factor affecting these decisions is the desire to run in a
classloader container environment such as JPF. (Look at issue 235)



 Comments   
Comment by paul_huang [ 21/Mar/05 ]

Good questions, Chas. I am now working on the code to merge the branch
Issue_74-78 into the trunk, plus to apply the API changes introduced in Issue 220.

Actually, I am now just considering these questions. What would be your suggestion?

Comment by paul_huang [ 21/Mar/05 ]

I looked at the refactoring code from branch Issue_74-78 again and realized that
in this implementation, we actually obtained a singleton provider instance and
use this instance to invoke each method. If I am right, this should help to
avoide the limitation that "Static methods limit the potential of extension in
the future.". We can still "manage appcontext-sensitive configuration settintgs,
enforce security, etc. "

If this is the case, we can still keep using the static method invocation.

What's your idea, Chas?

Correct me if I am wrong.

Comment by chas [ 22/Mar/05 ]

I believe this will work for simple containers such as webstart or applet. We
would have problems in a EJB or servlet container, particularly with hot-deploy
applications. On the other hand, I doubt that EJBs or servlets are going to
need desktop services.

Can you imagine any scenario where a single application instance is going to
need multiple behaviors (either security or configuration)?

We'll want to minimize the number of expensive security checks. I think this
can be done once in each provider factory. I doubt security policies would
change based upon the thread.

The related issue 235 is that the delayed provider class loading occurs in the
AWT thread which does not have the same thread context classloader as the main
application thread and therefore cannot find the provider. The JPF framework
has a similar problem with Swing Look&Feel resources, so I am not sure we need
to change the SPI pattern to solve this issue. Additionally, this problem will
also go away if the jdic classes are loaded by the system classloader.

Comment by paul_huang [ 22/Mar/05 ]

This is the feedback from the AWT team.

"I think you need to just make another small step from the hidden, private
factory to a public factory, which Desktop.getDesktop is actually.

I am not saying you need to do this for JDIC Desktop package, but J2SE API
should have such a design."





[JDIC-172] Scrollbars not appearing in Mozilla 1.7.5, JDIC 0.8.7 Created: 26/Jan/05  Updated: 10/Jul/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.8.7
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: mnooney Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows 2000
Platform: PC


Issuezilla Id: 172

 Description   

When i installed Mozilla 1.7.5 and embedded it the scrollbars disappeared.
However the scrollbars work fine on Mozilla 1.4.1. JDIC 0.8.7 was used.

See posts on discussion forum from miken Jan 25, 2005 11:02 PM.
Also tgore04 on Jan 19, 2005 6:52 PM.



 Comments   
Comment by michael_shan [ 03/Mar/06 ]

Assign to Michael.

Comment by michael_shan [ 21/Jun/06 ]

Have reproduced it with mozilla.

Comment by michael_shan [ 10/Jul/06 ]

Another related issue.
http://forums.java.net/jive/thread.jspa?threadID=16511&tstart=15

Comment by michael_shan [ 10/Jul/06 ]

Just FYI.
This issue is caused by missing components of Gecko. Version of mozilla 1.8a1
works well.
A bug should be filed to mozilla build. I'll close this issue after the bug is
filed.





[JDIC-164] Action.execute() does not check execution right Created: 18/Jan/05  Updated: 06/Feb/05

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.filetypes)
Affects Version/s: Branch-Issue_74-78
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: chas Assignee: paul_huang
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: HTML File secureExec    
Issuezilla Id: 164

 Description   

I have some security concerns about Action.execute(). This method should at
least call SecurityManager.checkExec().

The current UnixLaunchUtility and WinAssociationProvider could use
Runtime.exec() instead of native methods – this might be preferable.



 Comments   
Comment by paul_huang [ 24/Jan/05 ]

Chas,

Could you please help to make a patch for this issue?

Thanks

-Paul

Comment by chas [ 25/Jan/05 ]

We can't use Runtime.exec() because we want a new console and the new process
should be detached from this one.

Next patch adds security to both UnixLaunchUtility and WinAssociationProvider:

+ final SecurityManager security = System.getSecurityManager();
+ if (security != null)
+ security.checkExec(path);

Additionally, the WinAssociationProvider was reworked: %1 is expanded to a 8.3
filename; %L is expanded to a long filename. The security.checkExec() method is
always given the long filename of the executable.

Comment by chas [ 25/Jan/05 ]

Created an attachment (id=141)
add SecurityManager.checkExec() before process creation

Comment by paul_huang [ 06/Feb/05 ]

Patch accepted. Check into CVS branch.





[JDIC-543] Refreshing the browser through IE F5 loses authentication Created: 19/May/10  Updated: 19/May/10

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: antokh Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: PC
URL: http://forums.java.net/jive/thread.jspa?threadID=148854&tstart=0`


Issuezilla Id: 543

 Description   

It would seem there's an issue with JDIC authentication. Can someone please
confirm this is a bug? I posted here:
http://forums.java.net/jive/thread.jspa?threadID=148854&tstart=0






[JDIC-538] JDIC 0.9.5 webbrowser text input box can't enter any text on S10 by using jdk 1.6 Created: 01/Jul/09  Updated: 09/Jul/09

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: New Feature Priority: Critical
Reporter: bennyluo Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Solaris
Platform: All


Issuezilla Id: 538

 Description   

When use JDIC 0.9.1 to use jdk 1.6 on solaris 10 with mozilla 1.7.

I am trying to use the demo program Browser.jar to run the Browser class like
below:

/usr/jdk/jdk1.6.0_14/bin/java -cp ./Browser.jar:./jdic.jar -Djava.lib.path=.
Browser

Everything is all right, except the text input box in the html page, when the
browser download all the html page, the text input box can not enter any text.
Whatever you type any key on keyboard, it can not been displayed in the text
input box or the text will be displayed in the address bar, although the mouse
focus still in the text input box.

This sympton only happen on solaris 10 with Mozilla by using jdk 1.6, it will
not happen on windows with IE and Mozilla by using jdk 1.6, also, if I use jdk
1.5 on solaris 10 with mozilla, the sympton will NOT happen too, but
unfortunately, I need to use jdk 1.6.

Please help to identify whether it is a bug of JDIC project on solaris 10.
Thanks.



 Comments   
Comment by uta [ 09/Jul/09 ]

The workaround is in switching on xembed server (-Dsun.awt.xembedserver=true in
java command line). This workaround is really a quite another way to interact
with embedded components (like JDIC browser) from Java.
We do see this particular problem with focus handling is solved, but
nobody can predict what other areas could be broken.

The property "sun.awt.xembedserver" can be set by
System.setProperty("sun.awt.xembedserver", Boolean.TRUE.toString());
in customer code.





[JDIC-534] WebBrowser focus and keyboard issues Created: 15/Mar/09  Updated: 15/Mar/09

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: alexzhang Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 534

 Description   

When using WebBrowser to display a web page, there have a focus issue and the
mnemonics of the menu items won't work for us, please see below requirements. In
fact, the issues existed on all build versions, including the latest version 0.9.5.
I wrote a sample to reproduce my issues, please help to see if there any issues
with my codes.
Now we have two requirements:
1. After run the JDIC095, we want the focus in the JTextField 1, not on the web
page in WebBrowser.
2. After run the JDIC095, we want the mnemonics of the menu items can work normally.

// Sample codes
package com.jdic;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.event.KeyEvent;
import java.net.MalformedURLException;
import java.net.URL;

import javax.swing.BorderFactory;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JTextField;

import org.jdesktop.jdic.browser.WebBrowser;

public class JDIC095 {
public static void main(String[] args) {
JFrame frame = new JFrame("Test");
frame.setPreferredSize(new Dimension(500,300));
frame.setLayout(new FlowLayout());
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JMenuBar menuBar = new JMenuBar();
JMenu menuFile = new JMenu("File");
JMenuItem miNew = new JMenuItem("New");
JMenuItem miOpen = new JMenuItem("Open");
JMenuItem miSave = new JMenuItem("Save");

menuFile.setMnemonic(KeyEvent.VK_F);
menuFile.add(miNew);
menuFile.add(miOpen);
menuFile.addSeparator();
menuFile.add(miSave);

menuBar.add(menuFile);

frame.setJMenuBar(menuBar);

JTextField jtf = new JTextField();
jtf.setPreferredSize(new Dimension(160, 30));
jtf.setText("JTextField 1");
frame.add(jtf);

JTextField jtf1 = new JTextField();
jtf1.setPreferredSize(new Dimension(160, 30));
jtf1.setText("JTextField 2");
frame.add(jtf1);

JPanel jp = new JPanel();
jp.setLayout(new BorderLayout());
jp.setBorder(BorderFactory.createLineBorder(Color.gray));
jp.setPreferredSize(new Dimension(200, 120));
WebBrowser canvas = new WebBrowser();
canvas.setFocusable(false);
try

{ canvas.setURL(new URL("http://www.google.com")); }

catch (MalformedURLException e)

{ e.printStackTrace(); }

jp.add(canvas);
canvas.setVisible(true);
frame.add(jp);

frame.pack();
frame.setVisible(true);
}
}






[JDIC-520] Patch to fix build on MacOS 10.5 and to allow loading of JDIC in a separate ClassLoader Created: 12/May/08  Updated: 12/May/08

Status: Open
Project: jdic
Component/s: MacOS
Affects Version/s: current
Fix Version/s: None

Type: Task Priority: Critical
Reporter: stringbean Assignee: elliotth
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Mac OS X
Platform: Macintosh


Attachments: Text File jdic.patch    
Issuezilla Id: 520

 Description   

This patch fixes the following issues under MacOS X:

  • Compilation under MacOS 10.5 (targets 10.4 as build version).
  • Loading the JDIC tray integration from a separate ClassLoader
  • The build4crossplatform.xml build file now cleans the Mac native code.
  • Addition of a cleandemo target to the build4crossplatform.xml that cleans out
    the demo classes.
  • Addition of a cleanall target to the build4crossplatform.xml that calls all
    the clean targets.

The main fix is the ClassLoader one. We encountered problems when using multiple
ClassLoaders in our code where the tray icon would appear but it would not
display the menu. This was due to the native code being loaded in the default
ClassLoader which could not find the classes. I have fixed this by storing a
reference to the class that installs the tray icon and using that to display the
menu.



 Comments   
Comment by stringbean [ 12/May/08 ]

Created an attachment (id=307)
Patch for MacOS issues





[JDIC-517] JdicManager. initShareNative() produces wrong path for cross-platform Created: 15/Apr/08  Updated: 15/Apr/08

Status: Open
Project: jdic
Component/s: JDIC general
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: mbo Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: PC


Issuezilla Id: 517

 Description   

in JdicManager.initShareNative() the following code should produce the url of
jdic.jar as a String

//running url of current class

String runningURL =(
new URL(JdicManager.class
.getProtectionDomain()
.getCodeSource()
.getLocation(),
".")
).openConnection().getPermission().getName();

but the code URL.openConnection().getPermission().getName() actually appends the
name of the permission to the String, in my case "<all permission>"

This results in a wrong library path.

To fix this i just removed the .openConnection().getPermission().getName() part.






[JDIC-448] update tdemo/Browser to use BrowserEngineManager Created: 20/Oct/06  Updated: 22/Oct/06

Status: Open
Project: jdic
Component/s: demo
Affects Version/s: current
Fix Version/s: None

Type: Task Priority: Critical
Reporter: lordy Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Text File Browser.java.patch    
Issuezilla Id: 448

 Description   

Hey Michael, for the next release we should also fix the demos to the new way of using browser. Please
add patch asap.
Christopher



 Comments   
Comment by lordy [ 20/Oct/06 ]

Created an attachment (id=256)
patch

Comment by michael_shan [ 22/Oct/06 ]

Hi Chris,
Thank you for your code,I've put it into cvs with a minior change
from "(Compoment)webBrowser" to "webBrowser.asComponent()" . Thanks!

Michael

Comment by michael_shan [ 22/Oct/06 ]

To finish this issue, we still need update the webstart demo to include
staffs under Mac OS. Thus, this demo will work under linux/solaris/mac/win.





[JDIC-8] Improve Interface for Screensaver Options Created: 07/Jun/04  Updated: 29/Apr/05

Status: Open
Project: jdic
Component/s: Screensavers
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Critical
Reporter: grlea Assignee: markroth8
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows 2000
Platform: All


Issuezilla Id: 8

 Description   

After developing one screensaver, which had a lot of options (for a
screensaver), I found I had to write quite a bit of boilerplate to turn my
options (or "properties") into the data types I wanted (int, float, etc.). It'd
be great not to have to do this.

One idea I'd like to suggest is for screensavers to be provided with a
screensaver-specific implementation of java.util.prefs.Preferences
(http://java.sun.com/j2se/1.4.2/docs/api/java/util/prefs/Preferences.html).
This would be a non-proprietary, J2SE-compliant solution (no new interfaces!)
having all the methods that would be needed by a screensaver. It would also
obviate the need for the ScreensaverSettings class, the interface of which
currently has methods that reveal too much about the underlying implementation
(i.e. xscreensaver configuration through command-line options).






[JDIC-349] JTabbedPane paint problem (JDK1.4.2) Created: 06/Jan/06  Updated: 06/Jan/06

Status: Open
Project: jdic
Component/s: www
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: mbucher Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows 2000
Platform: PC


Issuezilla Id: 349

 Description   

WebBrowser component in JTabbedPane shows up even its tab is not selected.
Defect only with JDK 1.4.2. Works correct on JDK5.

To reproduce, try this code with JDK1.4.2:
-----------------------------------------------
package de.inxnet.inxmail;

import java.awt.BorderLayout;
import java.awt.Color;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;

import org.jdesktop.jdic.browser.WebBrowser;

public class BrowserTestCase
{
private WebBrowser webBrowser;

public BrowserTestCase()

{ JPanel p1 = new JPanel(); p1.setBackground( Color.GREEN ); JPanel p2 = new JPanel( new BorderLayout() ); webBrowser = new WebBrowser( true ); p2.add( webBrowser ); JTabbedPane tab = new JTabbedPane(); tab.add( "1", p1 ); tab.add( "2", p2 ); JFrame frame = new JFrame( "JDIC Browser test" ); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.getContentPane().add( tab ); frame.setBounds( 0, 0, 640, 480 ); frame.setVisible( true ); webBrowser.setContent( "<html><body><b>Content of Tab #2</b>"+ " (Tab #1 is EMPTY!)</body></html>" ); }

public static void main( String[] args ) throws Exception

{ new BrowserTestCase(); }

}
-----------------------------------------------






[JDIC-342] JdicManager throws exception if not loaded with URLClassLoader Created: 22/Nov/05  Updated: 05/Dec/06

Status: Reopened
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: pjgust Assignee: michael_shan
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 342

 Description   

org.jdesktop.jdic.init.JdicManager.initShareNative() casts the class loader for
the class to a URLClassLoader, and throws a JdicInitException if it was not
loaded with a URLClassLoader. Our application has a custom class loader that is
not a URLClassLoader, and loads its classes through a different mechanism.
Throwing an exception in that case may not be the right thing to do. In
addition, the code to add the binary path to the java.library.path is also
skipped, even though it may be necessary. I suggest putting the cast inside the
inner try/catch block where it is actually referenced as a URLClassLoader. I
also suggest considering some kind of hook for class loaders that do not derive
from URLClassLoader.



 Comments   
Comment by michael_shan [ 25/Jan/06 ]

Assigne to Michael

Comment by michael_shan [ 01/Mar/06 ]

Hi ,

Thank you for your reporting, but I'm not too sure about this issue. I can't
find where did the cast occure as you described
"org.jdesktop.jdic.init.JdicManager.initShareNative() casts the class loader for
the class to a URLClassLoader,and throws a JdicInitException if it was not
loaded with a URLClassLoader." Could you pls. clear that?

Thanks!
Michael

Comment by michael_shan [ 08/Mar/06 ]

Assign to DongDongYang.

Comment by michael_shan [ 12/Mar/06 ]

Hi,

I've found the codes.

Comment by michael_shan [ 12/Mar/06 ]

For the crossplatform build, the JdicManager.java used this class cast to put
jars into classpath.

Comment by michael_shan [ 20/Mar/06 ]

A serious bug.

Comment by michael_shan [ 29/Mar/06 ]

Hi,
With the build of 20060308, this issue should be fixed. Please have a try.

Comment by michael_shan [ 27/Apr/06 ]

Background:

JDIC's cross platform version, it tends to choice platform related
jdic_stub.jar automatically.Thus users can only import jdic.jar without caring
about different os. But the auto adding/loading of jdic_stub.jar is some
difficult to realize.

Analysis of this cr:
In our former code, we supposed that the classloader of JDIC should be instance
of URLClassLoader, but this has been failed when deploying JDIC as a plugin of
NetBeans, which doesn't extend URLClassLoader.

The latest fix of dynamically setting java.class.path property will not
work,since after JVM starting, it will not care the change of this property.

Current way to fix:

  • If classes are loaded by instance of URLClassLoader, use before way of using
    method "addURL" to change loading path dynamically and this will work well
  • For classes are not loaded by instance of URLClassLoader, user have to add
    jdic_stub.jar to classpath manually

Final way to fix:
1. Remove JDIC cross platform verion.Since if user have to jdic_stub.jar to
classpath manully, it's not necessary to provide this version anymore.
2. Develop JDIC ClassLoader to load classes in jdic_stub.jar.

I prefer fix 1,since fix 2 will make the architecture of JDIC bad. Fix 1 is
acceptable, as few softwares will provide a version of all platforms,for e.g .,
Java.

Michael

Comment by michael_shan [ 06/Nov/06 ]

Change to browser type.

Comment by michael_shan [ 05/Dec/06 ]

Hi Michael,
unfortunately I was not able to add a comment to the issue, don’t know why
(attachment was possible).
We would love to use jdic within eclipse on different platforms (no
URLClassLoader),therefore I had another suggestion to solve the platform
dependency stuff:
Why don’t you just use a Factory that creates the ServiceManagerStub dependent
on the operating system?
The following steps would be necessary:
1)Refactor all internal ServiceManagerStub classes within the os specific
packages into concrete ones, e.g. WinServiceManagerStub, MacSerrviceManagerStub, …
2)Add a factory into ServiceManager.getService() that uses the concrete stub (as
an interface of course). The factory could load the class without concrete
dependencies by reflection (similar to what you’ve done within
JdicManager.dealCrossPlatformVersion())
3)Remove that UrlLoader Code completely

Seems to be a tiny patch (most work has to be done in 1).
For a user of the jar, all he has to do is just adding the main jars plus all os
dependent jars. Only those would be loaded at runtime that are really created by
the factory.

Regards
Darius

Comment by michael_shan [ 05/Dec/06 ]

Hi Darius,

Thank you for your suggestion.I prefer this idea and it's worth to be
investigated. A future affection of this is that,if it works well I think JDIC
needs provide only one build,the cross platform version . Would you like put
your hands dirty on this issue? We really need more contributors' help on JDIC.

thanks,
Michael





[JDIC-329] Form submit callback Created: 07/Sep/05  Updated: 07/Sep/05

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Improvement Priority: Critical
Reporter: mcmeans Assignee: georgez
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 329

 Description   

I need something similar to WebBroser.willOpenURL except to get notification
when the user clicks on a button to submit a form. I want to intercept the form
POST or GET and massage it.

I need to know the details of the post. Something like:

formclicked^SubmitBtn=Submit&field1=abc123&ResetBtn=reset&field2=Test+this






[JDIC-294] StringIndexOutOfBounds when using JNLP-Servlet Created: 23/Jun/05  Updated: 23/Jun/05

Status: Open
Project: jdic
Component/s: Packager
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: madsheep Assignee: paul_huang
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: All


Issuezilla Id: 294

 Description   

I'm using a servlet to generate the jnlp. The name of the servlet (and the path)
doesn't contain a dot. Therefore I recieve the following exception:
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at java.lang.String.substring(Unknown Source)
at
org.jdesktop.jdic.packager.impl.FileOperUtility.getFileNameWithoutExt(Unknown
Source)
at
org.jdesktop.jdic.packager.impl.Jnlp2Package.checkPackageNameArgument(Unknown
Source)
at org.jdesktop.jdic.packager.impl.Jnlp2Package.parseArguments(Unknown
Source)
at org.jdesktop.jdic.packager.impl.Jnlp2Package.generatePackage(Unknown
Source)
at org.jdesktop.jdic.packager.Jnlp2Msi.main(Unknown Source)

The solution for the problem is quite simple. Just add a check to the method
FileOperUtility.getFileNameWithoutExt if the index is -1 and return the full
name in this case.






[JDIC-275] New method supportsProtocol() Created: 10/May/05  Updated: 26/Jan/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.9
Fix Version/s: None

Type: Improvement Priority: Critical
Reporter: turadg Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 275

 Description   

Until issue #274 is completed, it will be very helpful to know whether the
native component can access the resource at your URL. Since different native
components are implement the Browser API, potentially some of them could handle
a particular protocol while another couldn't.

A new method as below would enable the calling context to deal with this
accordingly.

public boolean supportsProtocol(String protocol)

or alternatively make the URL the argument directly

public boolean supports(URL url)

I notice the willOpenURL() method, which sounds similar, but serves a different
purpose.



 Comments   
Comment by georgez [ 31/May/05 ]

As JDIC Browser leverage the full functionality of native browsers (IE or
Mozilla), which should support most of the available protocols.

So, I think this new method doesn't make much senst. How it can be used in your
case ? Thanks.

Comment by turadg [ 03/Jun/05 ]

Oh, I wrote most of the explanation on the other ticket, issue #274.

Our use case makes use of "jar:" urls. We have an interface for a component
that takes a URL. Some of the implementers use JEditorPane which can read from
a "jar:" url, but some are implementors use the native browser component which
can't. When it can't, I need to know that so I can make the resource accessible
in a protocol the browser supports (e.g. file: by exploding the JAR).

Basically the problem boils down to this: the contract of the java.net.URL has
an openConnection() method which is the way to stream in the contents. The
develop is free to write new protocols or URLConnectionHandlers and anything in
that takes a java.net.URL can work with it. Except... these native browser
components.

If there isn't something done to bridge this change of contract, then I suggest
that the browser component not take a java.net.URL and instead take simply a
String (which is all it does with the URL).

Of course, what I would most like is for the JDIC component to figure out
whether the native component can access the URL and if not do something to make
it work. ie. what I describe in issue 274.

Comment by michael_shan [ 26/Jan/06 ]

Assign to Michael.





[JDIC-239] Screensaver Preview Should Be Scaled Down, Not a Smaller Component Created: 21/Mar/05  Updated: 29/Apr/05

Status: Open
Project: jdic
Component/s: Screensavers
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Critical
Reporter: grlea Assignee: markroth8
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: All


Issuezilla Id: 239

 Description   

The preview for screensavers (on Windows at least) is created using a smaller
Component. For some screensavers, especially those whose parameters contain
pixel sizes or speeds expressed as pixels per second, this results in a preview
that looks very unlike the actual saver.

A suggestion for how this could be better is to:
Create a background component that is 1/4 the size (i.e. 1/2 size in each
dimension) of the screen, give this component to the Screensaver, and then
scale the image painted to that component and paint the scaled image into the
preview pane.



 Comments   
Comment by markroth8 [ 21/Mar/05 ]

Thanks for filing this issue.

I think it should really be up to the screensaver to scale to as small a size as
necessary to fit itself in the component that is provided. Only the screensaver
knows the best / most efficient way to do that.

I know the reality is that many of the screensavers (blackglass included) don't
do well in the preview window, though. We should probably fix that on a
screensaver-by-screensaver basis.

It might be useful for the SDK to provide a utility class that does what you
described. In fact, the Graphics2D class provides the ability to scale a
graphics context pretty seamlessly.

I'll think about this some more. In the meanwhile, which ones but you in
particular, so I can focus my efforts on getting those to look nicer.





[JDIC-182] Should fall-back to the native browser if the default one cannot be embedded. Created: 03/Feb/05  Updated: 19/Jun/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.8.8
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: sgregory Assignee: dongdongyang
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 182

 Description   

Hello,

I have a problem where Mozilla 1.7 on my Windows 2000 computer doesn't seem to work. I am sure that
this is a problem for a significant number of people. It would be nice if
org.jdesktop.jdic.browser.Browser would detect this, and fall-back to using the native (IE in this case)
browser instead of leaving the user with an empty box.

Nicer yet would be for other platforms to fall-back to at least an HTML JTextPane if they do not have a
native browser.

Thank You!



 Comments   
Comment by georgez [ 03/Mar/05 ]

This is a reasonable request. Currently, On Windows, if Mozilla is not set as
the default browser, we'll just fall back to IE. But we didn't check if Mozilla
is set as the default browser but it fails to be embedded, and if IE still fails
to be embedded, it won't fall back to other default Java or native HTML viewer.
On *nix platform, it won't fall back to any other viewers.

Submitted patch to this would be very welcome !

Comment by georgez [ 03/Mar/05 ]

This is a reasonable request. Currently, On Windows, if Mozilla is not set as
the default browser, we'll just fall back to IE. But we didn't check if Mozilla
is set as the default browser but it fails to be embedded, and if IE still fails
to be embedded, it won't fall back to other default Java or native HTML viewer.
On *nix platform, it won't fall back to any other viewers.

Submitted patch to this would be very welcome !

Comment by dongdongyang [ 19/Jun/06 ]

Being of members changing, reassign the task.





[JDIC-173] Packager to support javaws version methods. Created: 27/Jan/05  Updated: 29/Apr/05

Status: Open
Project: jdic
Component/s: Packager
Affects Version/s: 0.8.7
Fix Version/s: None

Type: Improvement Priority: Critical
Reporter: toddm Assignee: paul_huang
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: PC


Issuezilla Id: 173

 Description   

Would like to use packager to insert a app deloyed using version name convention
into the javaws cache currently only the href attribute is read. I tested using
the example and the set up as below.

Thanks
Todd

app\webpad__V1.0.jar
\jlfgr__V1.0.jar
\jhcore__V1.0.jar
\jh__V1.0.jar
\holidays__V1.0.jar
\javahelp.jnlp
\webpad.jnlp

webpad.jnlp
<jnlp spec="1.0" codebase="$$codebase">
<information>
<title>WebPad Name version</title>
<vendor>Sun Microsystems, Inc.</vendor>
</information>
<resources>
<property name="publish-url" value="$$context/publish"/>
<j2se version="1.3"/>
<jar href="webpad.jar" version="1.0"/>
<jar href="jlfgr.jar" version="1.0"/>
<extension name="Help System"
href="javahelp.jnlp">
<ext-download ext-part="javahelp" download="lazy" part="help"/>
</extension>
<jar href="holidays.jar" version="1.0" download="lazy" part="help"/>
</resources>
<application-desc main-class="WebPad"/>
</jnlp>

javahelp.jnlp
<jnlp spec="1.0+" codebase="$$codebase">
<information>
<title>JavaHelp</title>
<vendor>Sun Microsystems, Inc.</vendor>
</information>
<resources>
<jar href="jhcore.jar" version="1.0" part="core"/>
<jar href="jh.jar" version="1.0" part="javahelp" download="lazy"/>
</resources>
<component-desc/>
</jnlp>






[JDIC-115] Binarypath cannot be specified externally Created: 02/Oct/04  Updated: 16/Dec/04

Status: Open
Project: jdic
Component/s: JDIC general
Affects Version/s: 0.8.6
Fix Version/s: None

Type: Improvement Priority: Critical
Reporter: Martin Grebac Assignee: georgez
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 115

 Description   

The binarypath currently cannot be specified from external world, but depends
on variety of conditions, which is unclear and hard to modify mechanism. The
mechanism could stay, however I think it would be good to do a check for
existence of a property (e.g. jdic-binary-path) first - and if it's set, then
use it, otherwise try something else.
This would help e.g. to bundle jdic with apps which cannot have all the
jars/dlls/exes/... in one place.
I can submit a patch if it's needed.






[JDIC-114] installer classes Created: 01/Oct/04  Updated: 03/Mar/05

Status: Open
Project: jdic
Component/s: JDIC API general
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Critical
Reporter: chas Assignee: paul_huang
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Java Archive File install.jar    
Issuezilla Id: 114

 Description   

A recent forum thread debated the way that jdic is packaged and delivered. I am
attaching a zip of some of the work I have done in the installer area.

1. JreInstall installs a "standard" jdic distribution into a jre.
2. WebstartInstall installs the native portion of a "standard" jdic distribution
into a webstart environment.
3. VersionServlet is installed into the webstart server to help with the
versioning aspects.

The "standard" jdic distribution envisioned contains jdic.jar,
jdic-installer.jar, and a sub-directory for each supported platform. Within
each platform directory is a jdic-platform jar. Below each platform directory
are the architecture subdirectories which contain the native jdic libraries.

Because there are quite a number of platform/architectures to support, perhaps
the future direction is that individuals could contribute binaries for new
platforms/architectures.



 Comments   
Comment by chas [ 01/Oct/04 ]

Created an attachment (id=72)
installer idea

Comment by georgez [ 03/Mar/05 ]

Should be an "Enhancement".





[JDIC-544] Fail to open Thunderbird with attachments Created: 23/Sep/10  Updated: 03/Nov/11

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.desktop)
Affects Version/s: 0.9
Fix Version/s: None

Type: Bug Priority: Major
Reporter: hubere Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: File thunderbird.diff    
Issuezilla Id: 544

 Description   

I tried to send an email with attachemts through Thunderbird (3.1.4) and got an
error message.
The reason for this error message is the command line constructed by
WinMozMailer in WinMozMailer#constructArgs(...) method. It appears that there
will be a dangling comma at the end of the attachment string causing Thunderbird
to fail.
A command line constructed by WinMozMailer might look like this:
"C:\Programme\Mozilla Thunderbird\thunderbird.exe" -compose
"to='Edi@de,',attachment='file://d:/cadis/MyMobiler.zip,'"
(mind the comma at the end!)

Thunderbird does not like this line but rather wants on without the comme like this:
"C:\Programme\Mozilla Thunderbird\thunderbird.exe" -compose
"to='Edi@de,',attachment='file://d:/cadis/MyMobiler.zip'"

Obviously Thunderbird is only picky with attachment-option, though?!



 Comments   
Comment by axeld [ 03/Nov/11 ]

That seems to be the issue, indeed. The attached patch fixes the problem, and lets me open mails with attachments just fine with Thunderbird 7.0.1.





[JDIC-542] jdic_native_applet.jar (version 0.9.5) use api java 1.6, not java 1.4 Created: 09/Mar/10  Updated: 09/Mar/10

Status: Open
Project: jdic
Component/s: JDIC general
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: vdubus Assignee: michael_shan
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: All


Issuezilla Id: 542

 Description   

jdic_native_applet.jar (in version 0.9.5) use api java 1.6, not java 1.4

Native loader!
Exception in thread "AWT-EventQueue-1" java.lang.NoSuchMethodError:
java.io.File.setExecutable(Z)Z
at org.jdesktop.jdic.init.NativeExtractor$1.run
(NativeExtractor.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at org.jdesktop.jdic.init.NativeExtractor.loadLibruary
(NativeExtractor.java:172)
at org.jdesktop.jdic.init.JdicManager.loadLibrary(Unknown Source)
at org.jdesktop.jdic.desktop.internal.impl.WinAPIWrapper.<clinit>
(WinAPIWrapper.java:35)
at org.jdesktop.jdic.desktop.internal.impl.WinUtility.getVerbCommand
(WinUtility.java:85)
at org.jdesktop.jdic.desktop.internal.impl.WinLaunchService.open
(WinLaunchService.java:90)
at org.jdesktop.jdic.desktop.Desktop.open(Unknown Source)






[JDIC-540] New future or help needet Created: 24/Aug/09  Updated: 24/Aug/09

Status: Open
Project: jdic
Component/s: Screensavers
Affects Version/s: 0.8.4
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: darkyere Assignee: markroth8
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: Other


Attachments: Text File SecurityScreensaver.rar    
Issuezilla Id: 540

 Description   

Question:
I would like to have the possibility to lock the screen until the right password
is entered in either a "log In Dialog" or just by registering Keyboard clicks.
is this a feature which could be added in a later version of SaverBeans SDK?

This is because im trying to create a never version of my "Security
Screensaver"(Old was made in delphi 2009) .

The reason for this (on java i suppose) applet: To keep of unwanted user unless
u got the required password.

Question:
Is it possible for me to further program these options myself through
"Simplescreensaver" and the other classes.

its probebly because im green but beacuse "Simplescreensaver" takes over the
control of the monitor (where i used a resized window).
Question:
Then i am not sure where to begin, to prevent it from shutting down. When
pressing etc. Alt-F4 or using ctrl-alt-del to open up taskmanager (on the older
vesion a simple commando to keep security screensaver's window ontop every 150
milisec so that Task mangaer couldn't be used).

Question:
Or how to show a dialog in the "Simplescreensaver" monitor to input the password.
Question:
and is it possible to register keyboard input while SimpleScreensaver is active.

These are my first priority questions and as soon as ive gotten anwser i will
start from what you recommended. and use tutorials or forums for futher information.

Best regards and Plz answer me back (not because



 Comments   
Comment by darkyere [ 24/Aug/09 ]

Created an attachment (id=314)
My Security Screensaver (made in delphi and whit wishes to make a better one in java)





[JDIC-535] isDefaultBrowserMozilla does not seem correct on Windows Created: 27/Apr/09  Updated: 27/Apr/09

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.9
Fix Version/s: None

Type: Bug Priority: Major
Reporter: dvoytenko Assignee: michael_shan
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: All


Issuezilla Id: 535

 Description   

No matter what the client setup is, it looks like isDefaultBrowserMozilla always
returns FALSE.

The code currently looks like the following:

public static boolean isDefaultBrowserMozilla() {
System.err.println("isDefaultBrowserMozilla");
String osName = System.getProperty("os.name").toLowerCase();

if ((osName.indexOf("solaris") >= 0) ||
(osName.indexOf("linux") >= 0) )

{ return true; }

else {
String nativeBrowserPath = getBrowserPath();
// Only when Mozilla is set as the default browser, return true.
// Or else, fall back to Internet Explorer.
// FireFox 1.0 is statically linked into Gecko and therefore can not
// be embedded. If FireFox is embeddable for some future version,
// we would have to explicitly check for both Mozilla and FireFox.
if (nativeBrowserPath.indexOf("mozilla") >= 0)

{ return true; }

else

{ return false; }

}
}

I believe it's not correct. The browser path should be converted to lowercase
before checking for "mozilla". I.e.

  • if (nativeBrowserPath.indexOf("mozilla") >= 0) {
    + if (nativeBrowserPath.toLowerCase().indexOf("mozilla") >= 0) {

Also, since the path is so important in determining this, it'd be great if it
was output in trace logs.






[JDIC-536] Application freezes when trying to instantiate more than one WebBrowser Created: 30/May/09  Updated: 30/May/09

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: platon007 Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: All


Issuezilla Id: 536

 Description   

When I create more that one WebBrowser instances, application is freezed. It's
very disapointed, that there is no availability to create few instances






[JDIC-539] Define tray menu on Mac OSX to use the native menu look and feel Created: 15/Aug/09  Updated: 15/Aug/09

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.tray)
Affects Version/s: current
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: calbot Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Mac OS X
Platform: Macintosh


Issuezilla Id: 539

 Description   

I'm using Mac OS X 10.5.7 and in this version the NSStatusItem that have their
menu set have a special look and feel where the top of the menu is square
connecting with the status bar and the bottom is rounded. We cannot easily
replicate this in swing code or SWT so it would be nice if the Mac
implementation of system tray allowed you to setup menu items natively to get
the nice look and feel.

I'm already using JDIC but I'm trying to do this with my own JNI tests and it
seems fairly easy. But it would be best if everyone could benefit from this.

I think the API could be a generic interface for configuring the
menus/menu-items so it could be useful for other platforms if they have similar
issues. Hopefully someone is still working on this project Thanks!






[JDIC-530] Ability to control user-agent Created: 22/Sep/08  Updated: 22/Sep/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: barend Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 530

 Description   

It would be mighty useful if the Browser class exposed getter, setter and
resetter methods for the user-agent string it sends along with its HTTP
requests. This would allow web applications to recognise an embedded browser and
e.g. use a different style sheet to make the web app's color scheme blend with
the surrounding Java application.






[JDIC-532] Change the method before submit a form to a new target window in VISTA + IE7 Created: 05/Dec/08  Updated: 05/Dec/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.9
Fix Version/s: None

Type: Bug Priority: Major
Reporter: vdragon Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: other
Platform: PC


Issuezilla Id: 532

 Description   

WINDOWS VISTA Home Premium, Service Pack 1
IE 7.0.6001.18000

Submitting a form with the method "POST", set target to "_blank", we expected
that the open window could get the parameters we had set in the form. But in
actualy, JDIC changed the method to "GET" before sending this http request, and
all parameters stored in the http request content was lost.

Runs well at XP + IE6, XP + IE7, only happens at VISTA + IE7






[JDIC-531] Running jdic-0.9.5 browser in Apache Felix OSGi container Created: 28/Nov/08  Updated: 28/Nov/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: barend Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 531

 Description   

I got the JDIC 0.9.5 embedded Browser component to run in the Apache Felix OSGi
container on Windows. For the sake of LGPL compliance, here's what I had to
change to make it work:

File: org/jdesktop/jdic/browser/internal/WebBrowserUtil.java
Line: 147
Method: #isDefaultBrowserMozilla()
Change: added "&& nativeBrowserPath.indexOf("firefox") == -1" to the if
statement to make sure Firefox is distinguished from Mozilla. This isn't
actually required to make JDIC work in Felix, but Firefox is common enough as a
default browser that you'll want to make this change anyway.

File: org/jdesktop/jdic/init/InitUtility.java
Line: 62
Method: #preAppendEnv(String,String)
Change: added "if (appendValue == null) return;" to the beginning of the method,
as it threw a NullPointerException on line 65 without it and there's not much
use prepending null to a path anyway.

File: org/jdesktop/jdic/init/JdicManager.java
Line: 314
Method: PrivilegedExceptionAction#run() inside #loadLibrary(String)
Change: replaced "System.load(nativeLibPath + File.separator + libName +
getPlatformDLLext())" by "System.loadLibrary(libName)" so that Felix OSGi can do
its path name mapping in the underlying ClassLoader call.

I embedded jdic.jar inside my OSGi bundle and used the "Bundle-ClassPath:
.,jdic.jar" manifest header to put it on the classpath. The jdic.dll file sits
inside my bundle in the "native/windows/x86" directory. The "Bundle-NativeCode"
header is defined as "native/windows/x86/jdic.dll;osname=win32;processor=x86".






[JDIC-533] UnsatisfiedLinkError for DisplayThread.initTray Created: 10/Dec/08  Updated: 10/Dec/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.tray)
Affects Version/s: current
Fix Version/s: None

Type: Task Priority: Major
Reporter: oleastre Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: All


Attachments: Text File jdic.diff    
Issuezilla Id: 533

 Description   

Trying to use the tray API from JDIC 0.9.5 with a jdk 1.5 on windows leads you
to an exception:
java.lang.UnsatisfiedLinkError:
org.jdesktop.jdic.tray.internal.impl.DisplayThread.initTray()V

It seems a change in org.jdesktop.jdic.tray.internal.impl.WinSystemTrayService
replaced a "System.loadLibrary" with a "JdicManager.loadLibrary". Unfortunately
it also replaced the library name from "tray" to "jdic".

The "initTray" method is only defined in the tray.dll and not in the jdic.dll.

So I suppose this is just a small error that occurred when changing the
loadLibrary call. Here is a small patch that revert this.

— WinSystemTrayService.java.orig 2008-06-03 16:46:00.000000000 +0200
+++ WinSystemTrayService.java 2008-12-10 13:00:46.188296800 +0100
@@ -76,7 +76,7 @@
private static native void eventLoop();
static {
try

{ - JdicManager.loadLibrary("jdic"); + JdicManager.loadLibrary("tray"); }

catch(PrivilegedActionException e)

{ e.printStackTrace(); }

 Comments   
Comment by oleastre [ 10/Dec/08 ]

Created an attachment (id=313)
Patch against version 0.9.5





[JDIC-529] setContent still does not work with current release 0.9.5 Created: 08/Sep/08  Updated: 08/Sep/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: botunge Assignee: michael_shan
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 529

 Description   

The defect correction from defect #299 is still not incorporated into the
newest release and therefore you cannot stream usefull data to jdic.






[JDIC-528] JDICplus 0.2.2 need to surpress javascript errors like jdic 0.9.x Created: 04/Sep/08  Updated: 04/Sep/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.8.4
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: tdanecito Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 528

 Description   

When using JDICplus 0.2.2 IE javascript error dialogs popup. This does not
occur within the IE normally and version 0.9.x of jdic surpresses them. If you
look at the code for ieEmbed.exe there is a call when creating a window to set
the silent property of a window via the put_silent() call of BowserWindow.

I can not build the project using the cpp source provided from the JDICplus
site since there is no hint on where jni_util.h and jni_util.cpp are to be
downloaded from.

Thanks,
-Tony






[JDIC-527] JDIC Plus version 0.2.2: execJS fails on some pages Created: 14/Jul/08  Updated: 14/Jul/08

Status: Open
Project: jdic
Component/s: JDIC general
Affects Version/s: 0.8.4
Fix Version/s: None

Type: Bug Priority: Major
Reporter: arnljot Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: PC
URL: http://www.vg.no


Attachments: PNG File JDIC_IE-version.PNG     PNG File JDIC_vg.no_stacktrace.PNG     PNG File JDIC_yr_no_crash.PNG    
Issuezilla Id: 527

 Description   

Open the JDIC Plus SDK sample browser.

Open http://www.vg.no

Browse the site, try to use "back", "forward" and "refresh".

Browser will throw the following stack, and going back using the JDIC Plus API
will not work:
{Native loader
Web start!
Exception in thread "AWT-EventQueue-0" java.lang.IllegalAccessException: Browser
JScript execution error
at org.jdic.web.peer.WBrComponentPeer.execJS(Native Method)
at org.jdic.web.BrComponent.execJS(BrComponent.java:498)
at org.jdic.web.BrComponent$1.run(BrComponent.java:486)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)

Using the back key on the keyboard works.

Also some sites that does work in IE will not work propperly in JDIC Plus as
they pop up with JS errors all the time.

One example: http://www.yr.no

Closing the browser will also cause a crash in JavaWS if a window is open while
quitting the sample browser (JS error dialog, or find dialog).



 Comments   
Comment by arnljot [ 14/Jul/08 ]

Created an attachment (id=309)
Dialog that appears when browsing yr.no

Comment by arnljot [ 14/Jul/08 ]

Created an attachment (id=310)
Stacktrace snapshot after pressing back in sample jdic browser

Comment by arnljot [ 14/Jul/08 ]

Created an attachment (id=311)
About vidow from IE6 which is installed





[JDIC-526] Force IE on Windows Created: 10/Jul/08  Updated: 10/Jul/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: aces Assignee: michael_shan
Resolution: Unresolved Votes: 13
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: All


Issuezilla Id: 526

 Description   

Hi

Current release is not compatible with Firefox 3.
To avoid problems on Win32 system with Firefox set as default browser, I´d like
to sugest to create a control to change JDIC behavior :

A System property to override current default browser, and use IE.

It could be done this way on org.jdesktop.jdic.browser.internal.WebBrowserUtil :

/***************************************************/
/**<pre>

  • Constant string property name to force IE by JDIC.
  • This one can be set as VM parameter
  • java -Djdic.forceIE=true MyApp
  • or within app, before invoking JDIC :
  • System.setProperty("jdic.forceIE","true");
    *</pre>
    **/
    public static final String FORCE_IE = "jdic.forceIE";

/**

  • Modified version of isDefaultBrowserMozilla to support
  • FORCE_IE feature
    **/
    public static boolean isDefaultBrowserMozilla() {

String osName = System.getProperty("os.name").toLowerCase();

if ((osName.indexOf("solaris") >= 0) ||
(osName.indexOf("linux") >= 0) )

{ return true; }


else
{
String forceIE = System.getProperty(FORCE_IE);
if(forceIE != null && forceIE.equalsIgnoreCase("true"))

{ return false; }

String nativeBrowserPath = getBrowserPath();
// Only when Mozilla is set as the default browser, return true.
// Or else, fall back to Internet Explorer.
// FireFox 1.0 is statically linked into Gecko and therefore can not
// be embedded. If FireFox is embeddable for some future version,
// we would have to explicitly check for both Mozilla and FireFox.
if (nativeBrowserPath.indexOf("mozilla") >= 0)

{ return true; }

else

{ return false; }

}

}
/********************************************************************/

Thanks in advance

Alessandro (aces)






[JDIC-525] Option to force use of Internet Explorer as browser Created: 10/Jul/08  Updated: 10/Jul/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: ccuchet Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 525

 Description   

In jdic 0.9 for Windows, please add a mean to force the use of Internet Explorer
as the used browser, when Internet Explorer is not the default browser of the user.
The path to Internet Explorer can be retrieved in
WebBrowserUtil_nativeGetBrowserPath with
RegOpenKey(HKEY_LOCAL_MACHINE,
"SOFTWARE\\Classes\\Applications\\iexplore.exe\\shell\\open
command", &hkey)
Thanks






[JDIC-523] jdic native library load path and tray issues Created: 09/Jul/08  Updated: 09/Jul/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.tray)
Affects Version/s: current
Fix Version/s: None

Type: Task Priority: Major
Reporter: varunhiremath Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Text File load_native_library.diff    
Issuezilla Id: 523

 Description   

Hi,

I'm maintaining the jdic package in Debian. There were some minor bugs in the
jdic-0.9.5 version, due to which the jdic tray example was failing to load.

Also, please allow the native library path to be specified using the
java.library.path argument.

Please find attached a patch to fix these issues.

Thanks,
Varun Hiremath
email: varun[at]debian[dot]org



 Comments   
Comment by varunhiremath [ 09/Jul/08 ]

Created an attachment (id=308)
patch for jdic native library path and tray issues





[JDIC-521] Class files misplaced in jdic-0.9.4-bin-linux - Filetype package not working on Linux because it uses the Windows registry classes Created: 18/May/08  Updated: 18/May/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.filetypes)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Major
Reporter: sanchez_paus Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: All


Issuezilla Id: 521

 Description   

In the 0.94 build for Linux the contents on the OS specific directory for
handling MIME Types are wrong. It contains the same files that the Windows
distribution.

The contents of the directory jdic.jar \org\jdesktop\jdic\filetypes\internal
(0.9.4 but also in 0.9.1, 0.9.2 and 0.9.3 as well as the cross-platforms
distribuitions of those versions)are:

AppAssociationReader.class
AppAssociationReaderFactory.class
AppAssociationWriter.class
AppAssociationWriterFactory.class
AppConstants.class
AppUtility.class
WinAppAssociationReader.class
WinAppAssociationWriter$BackupAssociation.class
WinAppAssociationWriter.class
WinRegistryUtil.class
WinRegistryWrapper.class

When looking at past distributions, I find that in the 0.9.0 build the contents
of that directory contain Gnome specific classes:

AppAssociationReader.class
AppAssociationReaderFactory.class
AppAssociationWriter.class
AppAssociationWriterFactory.class
AppConstants.class
AppUtility.class
GnomeAppAssociationReader.class
GnomeAppAssociationWriter.class
GnomeAssociationUtil.class
GnomeVfsWrapper.class

So I guess that someone has misplaced the GNome classes when building the
versinos starting 0.9.1.






[JDIC-524] Debug print on console "isDefaultBrowserMozilla" Created: 10/Jul/08  Updated: 10/Jul/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: ccuchet Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 524

 Description   

In build 0.9.5 of jdic, a piece of debug code remains in
org.jdesktop.jdic.browser.internal.WebBrowserUtil.isDefaultBrowserMozilla()
Please remove it to avoid unwanted traces on console.






[JDIC-518] Vista's Windows Mail not supported Created: 05/May/08  Updated: 03/Nov/11

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.desktop)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: the_8tre Assignee: michael_shan
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: Other


Attachments: File windowsmail.diff    
Issuezilla Id: 518

 Description   

On JDIC 0.9.4 the "Windows Mail" mailer is not supported.
It's just a matter of list of supported mailer names.
see org.jdesktop.jdic.desktop.internal.impl.ServiceManagerStub for win32



 Comments   
Comment by axeld [ 03/Nov/11 ]

Indeed, just adding "Windows Mail" to the list makes it work. Since the MAPI support is even queried for, why not just use that as a fallback no matter the default mailer string?

In any case, the attached patch adds Windows Mail support, only.





[JDIC-515] If the WebStart ClassLoader isn't "com.sun.jnlp.JNLPClassLoader", look up the getParent() chain for it before giving up Created: 31/Mar/08  Updated: 31/Mar/08

Status: Open
Project: jdic
Component/s: JDIC general
Affects Version/s: current
Fix Version/s: None

Type: Task Priority: Major
Reporter: jdouglas Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Text File JNLPClassLoader.diff    
Issuezilla Id: 515

 Description   

This is similar to:

https://jdic.dev.java.net/issues/show_bug.cgi?id=473

Here's the patch:

Index: JdicManager.java
===================================================================
RCS file:
/cvs/jdic/src/jdic/src/share/classes/org/jdesktop/jdic/init/JdicManager.java,v
retrieving revision 1.30
diff -u -r1.30 JdicManager.java
— JdicManager.java 4 Dec 2006 07:07:18 -0000 1.30
+++ JdicManager.java 1 Apr 2008 02:29:28 -0000
@@ -290,26 +290,30 @@
try {
Class jnlpClassLoaderClass = Class
.forName("com.sun.jnlp.JNLPClassLoader");

  • if (cl.getClass().isAssignableFrom(jnlpClassLoaderClass)) {
  • Method findLibMethod = jnlpClassLoaderClass.getDeclaredMethod(
    + while (cl != null)
    + {
    + if (cl.getClass().isAssignableFrom(jnlpClassLoaderClass)) {
    + Method findLibMethod = jnlpClassLoaderClass.getDeclaredMethod(
    "findLibrary", new Class[] { String.class }

    );

  • String jdicLibURL = (String) findLibMethod.invoke(cl,
    + String jdicLibURL = (String) findLibMethod.invoke(cl,
    new Object[] { "jdic" }

    );

  • jdicLibFolder = (new File(jdicLibURL)).getParentFile()
    + jdicLibFolder = (new File(jdicLibURL)).getParentFile()
    .getCanonicalPath();
  • WebBrowserUtil.trace("running path " + jdicNativeLibPath);
  • isShareNativeInitialized = true;
  • } else { - throw new JdicInitException( - "Unexpected ClassLoader for webstart, only Sun's com.sun.jnlp.JNLPClassLoader is supported,while current classloader is " - + cl.getClass().getName()); + WebBrowserUtil.trace("running path " + jdicNativeLibPath); + isShareNativeInitialized = true; + return jdicLibFolder; + }

    else

    { + cl = cl.getParent(); + }

    }
    + throw new JdicInitException(
    + "Unexpected ClassLoader for webstart, only Sun's
    com.sun.jnlp.JNLPClassLoader is supported,while current classloader is "
    + + cl.getClass().getName());
    } catch (Exception e)

    { WebBrowserUtil.error(e.getMessage()); e.printStackTrace(); throw new JdicInitException(e.getMessage()); }
  • return jdicLibFolder;
    }


 Comments   
Comment by jdouglas [ 31/Mar/08 ]

Created an attachment (id=305)
PATCH





[JDIC-514] Browser forms do not receive key events in Linux Created: 26/Mar/08  Updated: 26/Mar/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: jorgev Assignee: michael_shan
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: All


Issuezilla Id: 514

 Description   

With the following test, input box from the google form does not receive key
events in linux:

Tested with jdic 0.9.4 in ubuntu linux.

<<<<<

public class JDICTest extends JFrame{
public JDICTest(){
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container c = getContentPane();
c.setLayout(new BorderLayout());
try{
WebBrowser webBrowser = new WebBrowser(new URL("http://www.google.com"));
webBrowser.setSize(800, 400);
webBrowser.setEnabled(true);

c.add(webBrowser, BorderLayout.CENTER);
c.validate();
}catch(Exception e){
e.printStackTrace();
}
}

public static void main(String[] args){
JDICTest test = new JDICTest();
test.pack();
test.setVisible(true);
}
}

>>>>

see forum thread:
http://forums.java.net/jive/thread.jspa?messageID=265675&#265675






[JDIC-512] browser doesn't work in dual-monitor setup Created: 21/Jan/08  Updated: 21/Jan/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.8.4
Fix Version/s: None

Type: Bug Priority: Major
Reporter: fw76 Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 512

 Description   

The JDIC browser component doesn't work in a Swing application that uses a
dual-monitor setup.
Note: If 2 monitors are attached, but the Swing application only uses one
monitor the jdic browser does work.

No exception are thrown, the browser window just stays gray.

Tested under Ubuntu Linux using Mozilla and under WindowsXP using IE7.0.






[JDIC-513] Single package for all OSs Created: 02/Feb/08  Updated: 02/Feb/08

Status: Open
Project: jdic
Component/s: JDIC API general
Affects Version/s: 0.8.4
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: ian2000611 Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 513

 Description   

1. change package names to make each os/arch uniquely identifiable i.e.
org.jdesktop.jdic.desktop.win32.internal or org.jdesktop.jdic.win32.desktop.internal

2. uniquely name each os/arch navive library i.e. linux-libjdic.so,
freebsd-libjdic.so

3. use a factory to get os/arch specific classes and load native libraries using
System.getProperty("os.name") and System.getProperty("os.arch")

4. put in a single jar and the native libraries in one cross platform
distribution that a END USER could unzip directly to their jre/lib/ext folder






[JDIC-511] DesktopException when opening File having unicode chars in filename Created: 14/Jan/08  Updated: 14/Jan/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.desktop)
Affects Version/s: 0.9
Fix Version/s: None

Type: Bug Priority: Major
Reporter: david_frederick Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 511

 Description   

The code below produces a DesktopException. I think the file should be opened
successfully. If you disagree, please use this bug to fix the exception
message, also shown below.

Sample code:

String filename = "r上�.txt"; // filename having chinese chars
Desktop.open(File.createTempFile("test", filename));

Exception message has typo ('associationed'):
"Failed to launch the associationed application"






[JDIC-510] WebBrowserEvent.WEBBROWSER_DOWNLOAD_ERROR not being sent Created: 04/Jan/08  Updated: 04/Jan/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: dkuy Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: PC


Issuezilla Id: 510

 Description   

In windows and linux the WebBrowserEvent.WEBBROWSER_DOWNLOAD_ERROR is never
sent for either Internet Explorer or Mozilla.
I never got it even when errors where happening so I looked into jdic source
code. This event corresponds to native CEVENT_DOWNLOAD_ERROR in
share/native/utils/Message.h.
This constant is never used in the Mozilla code either for unix or windows.
For Internet Explorer it is used in BrowserWindow::OnNavigateError, but this
method is not being mapped, in BrowserWindow.h. I guess
SINK_ENTRY_EX(1, DIID_DWebBrowserEvents2, DISPID_NAVIGATEERROR ,
OnNavigateError) needs to be added but didn't test it






[JDIC-509] Memory leak in browser executeScript and getContent Created: 24/Oct/07  Updated: 24/Oct/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Major
Reporter: peter_nolasco Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: All


Issuezilla Id: 509

 Description   

This methods uses internaly the C function "strdup" to reserve memory, and
anyone frees this space. I test it with Internet Exploxer / Windows XP.

It's very easy and quick to test, modifing the "SimpleBrowser.java" example, for
example:

String scriptContent =
"asñldfkjasñdflkjañsldfkjñasljfñlasdjkñaskjfdñaslkjfñaslkdjfñalskjñalskjfñaksf"+
"asñldfkjasñdflkjañsldfkjñasljfñlasdjkñaskjfdñaslkjfñaslkdjfñalskjñalskjfñaksf"+
"asñldfkjasñdflkjañsldfkjñasljfñlasdjkñaskjfdñaslkjfñaslkdjfñalskjñalskjfñaksf"+
"asñldfkjasñdflkjañsldfkjñasljfñlasdjkñaskjfdñaslkjfñaslkdjfñalskjñalskjfñaksf"+
"asñldfkjasñdflkjañsldfkjñasljfñlasdjkñaskjfdñaslkjfñaslkdjfñalskjñalskjfñaksf"+
"asñldfkjasñdflkjañsldfkjñasljfñlasdjkñaskjfdñaslkjfñaslkdjfñalskjñalskjfñaksf"+
"asñldfkjasñdflkjañsldfkjñasljfñlasdjkñaskjfdñaslkjfñaslkdjfñalskjñalskjfñaksf";

String tjscript = "document.write('"+ scriptContent +"');";
for (int i=0; i < 1000; i++){
webBrowser.executeScript(tjscript);
try

{ Thread.sleep(1000); }

catch (InterruptedException e) {}
}






[JDIC-508] linux detected as windows? Created: 27/Aug/07  Updated: 27/Aug/07

Status: Open
Project: jdic
Component/s: www
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: eppesuig Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: PC


Issuezilla Id: 508

 Description   

Hi all,
I just downloaded
https://jdic.dev.java.net/files/documents/880/62098/jdic-0.9.3-bin-linux.zip and
installed on a linux box. Then I run my application with jdic.jar in classpath
and with LD_LIBRARY_PATH including the directory of *so files.

Now my application gives this error:

demo@scarafaggio:~/Neos/bin$ ./luxor
Warning: Cannot convert string "-b&h-luxi
sans-medium-r-normal--140-p-iso8859-1" to type FontStruct
Warning: Cannot convert string "-misc-ar pl shanheisun
uni-medium-r-normal-p*-iso10646-1" to type FontStruct
Exception in thread "AWT-EventQueue-1" java.lang.UnsatisfiedLinkError:
org.jdesktop.jdic.filetypes.internal.WinRegistryWrapper.RegOpenKey(I[BI)[I
at
org.jdesktop.jdic.filetypes.internal.WinRegistryWrapper.RegOpenKey(Native Method)
at
org.jdesktop.jdic.filetypes.internal.WinRegistryWrapper.WinRegSubKeyExist(Unknown
Source)
at
org.jdesktop.jdic.filetypes.internal.WinRegistryUtil.isSubKeyExist(Unknown Source)
at
org.jdesktop.jdic.filetypes.internal.WinRegistryUtil.isMimeTypeExist(Unknown Source)
at
org.jdesktop.jdic.filetypes.internal.WinRegistryUtil.isMimeTypeExist(Unknown Source)
at
org.jdesktop.jdic.filetypes.internal.WinAppAssociationReader.isMimeTypeExist(Unknown
Source)
at
org.jdesktop.jdic.filetypes.AssociationService.getMimeTypeAssociation(Unknown
Source)
at
utils.io.jdic.ApplicationAssociations.getAssociationByMimetype(ApplicationAssociations.java:78)
at
utils.io.jdic.ApplicationAssociations.getOpeningApplicationCommandByMimetype(ApplicationAssociations.java:157)
at
gui.MimeTypeFrame.setDefaultAssociationButtonActionPerformed(MimeTypeFrame.java:386)
at gui.MimeTypeFrame.access$300(MimeTypeFrame.java:28)
at gui.MimeTypeFrame$4.actionPerformed(MimeTypeFrame.java:117)
[...]

I am using this java and linux versions:
demo@scarafaggio:~/Neos/bin$ java -version
java version "1.6.0_02"
Java(TM) SE Runtime Environment (build 1.6.0_02-b05)
Java HotSpot(TM) Server VM (build 1.6.0_02-b05, mixed mode)
demo@scarafaggio:~/Neos/bin$ uname -a
Linux scarafaggio 2.6.18-5-xen-686 #1 SMP Mon Aug 13 01:44:42 UTC 2007 i686
GNU/Linux

P.S. version 0.9.3 is not available in this form for reporting bugs.



 Comments   
Comment by eppesuig [ 27/Aug/07 ]

Changed platform and os in this bug report.

Comment by eppesuig [ 27/Aug/07 ]

Please note that 0.9.2 display the same problem, while 0.9.1.1 works as expected.

If this behaviour is based on environment variables, this is the complete
environment where the application is ran:

demo@scarafaggio:~/Neos/bin$ env
SSH_AGENT_PID=10328
SHELL=/bin/bash
DESKTOP_STARTUP_ID=
TERM=xterm
GTK_RC_FILES=/etc/gtk/gtkrc:/home/demo/.gtkrc-1.2-gnome2
WINDOWID=27263029
OLDPWD=/home/demo/Neos/lib
USER=demo
LS_COLORS=no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:tw=30;42:ow=34;42:st=37;44:ex=01;32:.tar=01;31:.tgz=01;31:.arj=01;31:.taz=01;31:.lzh=01;31:.zip=01;31:.z=01;31:.Z=01;31:.gz=01;31:.bz2=01;31:.deb=01;31:.rpm=01;31:.jar=01;31:.jpg=01;35:.jpeg=01;35:.gif=01;35:.bmp=01;35:.pbm=01;35:.pgm=01;35:.ppm=01;35:.tga=01;35:.xbm=01;35:.xpm=01;35:.tif=01;35:.tiff=01;35:.png=01;35:.mov=01;35:.mpg=01;35:.mpeg=01;35:.avi=01;35:.fli=01;35:.gl=01;35:.dl=01;35:.xcf=01;35:.xwd=01;35:.flac=01;35:.mp3=01;35:.mpc=01;35:.ogg=01;35:.wav=01;35:
SSH_AUTH_SOCK=/tmp/ssh-TqhDm10284/agent.10284
GNOME_KEYRING_SOCKET=/tmp/keyring-NUccRW/socket
SESSION_MANAGER=local/scarafaggio:/tmp/.ICE-unix/10284
USERNAME=demo
DESKTOP_SESSION=gnome
PATH=/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
GDM_XSERVER_LOCATION=local
PWD=/home/demo/Neos/bin
LANG=it_IT.UTF-8
GDMSESSION=gnome
HISTCONTROL=ignoredups
HOME=/home/demo
SHLVL=1
GNOME_DESKTOP_SESSION_ID=Default
LOGNAME=demo
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-IGEk3xH7A4,guid=1409c0b0d376eb89f633f40046d27ec7
LESSOPEN=| /usr/bin/lesspipe %s
DISPLAY=:0.0
LESSCLOSE=/usr/bin/lesspipe %s %s
COLORTERM=gnome-terminal
XAUTHORITY=/home/demo/.Xauthority
_=/usr/bin/env

Comment by eppesuig [ 27/Aug/07 ]

I just rebuild the jar from CVS sources and found that it works. So, I think the
problem is in the build that are offered on the dev.java.net website.

Hereby I change the subcomponent of this bug report to "www".

Bye,
Giuseppe





[JDIC-504] WebkitBrowser component blocks when added to a modal dialog. Created: 14/Aug/07  Updated: 14/Aug/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: wjanssens Assignee: michael_shan
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Mac OS X
Platform: Macintosh


Issuezilla Id: 504

 Description   

Using

The documentStarted event fires, but the document remains blank. The documentCompleted event
doesn't fire until after the dialog is dismissed.

The component seems to work fine when added to a frame or to a non-modal dialog.






[JDIC-505] browser.executeScript(String) always returns an empty string Created: 20/Aug/07  Updated: 21/Aug/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: wjanssens Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Mac OS X
Platform: Macintosh


Issuezilla Id: 505

 Description   

as an example:
browser.executeScript("document.getElementById('foo').value;")
should return the value of the foo element, but it always returns ""



 Comments   
Comment by wjanssens [ 21/Aug/07 ]

The problem seems to be here:

public String executeScript(final String javaScript) {
StringBuffer sb = new StringBuffer();
Object[] args =

{ javaScript, sb }

;
sendMsg(runJS, args);
return sb.toString();
}

According to http://devworld.apple.com/documentation/Java/Reference/1.4.2/appledoc/api/com/
apple/eawt/CocoaComponent.html#sendMessage(int,%20java.lang.Object) calls to sendMessage are
asynchronous, so even though the native code is appending the result of the call to the StringBuffer, the
executeScript method has already returned.





[JDIC-507] Windows Vista support Created: 21/Aug/07  Updated: 21/Aug/07

Status: Open
Project: jdic
Component/s: JDIC API general
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: fschmelz Assignee: michael_shan
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: Other


Issuezilla Id: 507

 Description   

Hallo all,

is there any support for Windows Vista planned?
Currently supported is only up to Windows XP.

Frank






[JDIC-502] Memory leak: WebBrowser references not released by NativeEventThread Created: 06/Jul/07  Updated: 06/Jul/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: dkuy Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Java Source File TestWebBrowser.java    
Issuezilla Id: 502

 Description   

After a WebBrowser is disposed, NativeEventThread still keeps a reference to
the WebBrowser instance preventing it to be garbage collected, in fact the
whole parent window can't be garbage collected unless the WebBrowser is removed
from its parent.
Tested only in Windows but it should happen in all platforms.
The reference is in webBrowsers vector. The webbrowser is added in
NativeEventThread.attachWebBrowser method and is never removed.
So also the memory used by the webBrowsers vector is increasing as more
instances are being created and disposed, which is also a memory leak.
Possible solution would be to change vector to map and remove from map with
Integer as keys and IWebBrowser as values, and removed from map after dispose.



 Comments   
Comment by dkuy [ 06/Jul/07 ]

Created an attachment (id=303)
Shows how the webbrowser instances are not gc while buttons are even after calling several times System.gc() and Runtime.getRuntime().runFinalization(). Also in debugger can be seen that thread with name EventThread is holding a vector variable called webBrowsers with the 20 elements, which prevents them from being garbage collected





[JDIC-506] incorrect mail example code Created: 21/Aug/07  Updated: 21/Aug/07

Status: Open
Project: jdic
Component/s: JDIC general
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: fschmelz Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All
URL: https://jdic.dev.java.net/documentation/Examples.html


Issuezilla Id: 506

 Description   

The mail example on https://jdic.dev.java.net/documentation/Examples.html
contains incorrect code:
msg.setToList(toList);
msg.setCcList(ccList);
msg.setAttachmentList(attachList);
It should be:
msg.setToAddrs(toList);
msg.setCcAddrs(ccList);
msg.setAttachments(attachList);
An old API?






[JDIC-503] Borwser resizing problem Created: 09/Jul/07  Updated: 09/Jul/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: tvv2000 Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: GIF File error.gif    
Issuezilla Id: 503

 Description   

I try to use split pane in form with WebBrowser, but when I try to resize it I
received an error.

Simple test

import org.jdesktop.jdic.browser.*;

import javax.swing.*;

public class BrowserTest {

public static void main(String[] args)

{ JFrame frame = new JFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JSplitPane splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, new JPanel(), new WebBrowser()); frame.getContentPane().add(splitPane); frame.setSize(500, 300); frame.setVisible(true); }

}



 Comments   
Comment by tvv2000 [ 09/Jul/07 ]

Created an attachment (id=304)
screenshot

Comment by tvv2000 [ 09/Jul/07 ]

Additional comments
1. I use IE 6.0
2. An error happend when I try to move splitter to enlarge left pane.





[JDIC-500] Download is not possible Created: 26/Jun/07  Updated: 04/Jul/07

Status: Open
Project: jdic
Component/s: www
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: lrcusts Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 500

 Description   

The Download of jdic-0.9.2-bin-windows.zip from the Site
https://jdic.dev.java.net/servlets/ProjectDocumentList?folderID=7362&expandFolder=7362&folderID=6267
is not possible.

It starts and completes, but the file is not on the selected location.
I tried it in the company i working and at home and with firefox and ie.



 Comments   
Comment by lrcusts [ 04/Jul/07 ]

Today it has worked -> Please forget this issue.





[JDIC-497] setContent doesn't work on WebKitWebBrowser Created: 31/May/07  Updated: 31/May/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: tdavies Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Mac OS X
Platform: Macintosh


Issuezilla Id: 497

 Description   

This class never sends the HTML to the browser.

A fix is to change setContent to:

public void setContent(final String htmlContent) {
clearHTMLSource();
if (htmlContent != null)
HTMLSource = new String(htmlContent);
sendMsg(loadURLFromString, new String[]

{ htmlContent, null}

);
}






[JDIC-496] On the Mac, doesn't encode to addresses, etc. Created: 28/May/07  Updated: 28/May/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.desktop)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Major
Reporter: ntdaley Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Mac OS X
Platform: Macintosh


Issuezilla Id: 496

 Description   

In MacMailerService, flatten(String,Iterator) should encode the strings it gets from the iterator.
RFC 2368 says:
> Note that all URL reserved characters in "to" must be encoded

Because they are not encoded, it is not possible to call Desktop.mail(Message) with 'to' addresses like:
unlikely?address@example.com
Or
"Me" <me@my.site>
Only
me@my.site
would be possible. That, or the program would have to encode the to addresses itself; this would
probably break cross-platformness (because other platforms don't necessarily use a mailto URL to open
the mail program).

I would also suggest that the documentation for Message should indicate whether the toAddrs should
be address only, or if name and address are allowed.






[JDIC-494] Please provide Win64 version Created: 19/Apr/07  Updated: 19/Apr/07

Status: Open
Project: jdic
Component/s: JDIC general
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: schlm3 Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: PC


Issuezilla Id: 494

 Description   

I miss the Windows 64-bit version of JDIC.dll ...






[JDIC-498] does not build with xulrunner 1.8.0.11 Created: 03/Jun/07  Updated: 03/Jun/07

Status: Open
Project: jdic
Component/s: JDIC general
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: bollin Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 498

 Description   

[exec] g++ -c MozEmbed.cpp -o MozEmbed.o -DMOZ_WIDGET_GTK2 -DXPCOM_GLUE
-DMOZILLA_STRICT_API -I. -I../../../share/native/utils
-I../../../share/native/mozilla -include
/usr/lib/xulrunner/sdk/include/mozilla-config.h
-I/usr/lib/xulrunner/sdk/include/ -I/usr/lib/xulrunner/sdk/include/xpcom/include
-I/usr/lib/xulrunner/sdk/include/nspr/include
-I/usr/lib/xulrunner/sdk/include/webbrwsr/include
-I/usr/lib/xulrunner/sdk/include/profile/include
-I/usr/lib/xulrunner/sdk/include/dom/include
-I/usr/lib/xulrunner/sdk/include/string/include
-I/usr/lib/xulrunner/sdk/include/embedstring/include
-I/usr/lib/xulrunner/sdk/include/necko/include
-I/usr/lib/xulrunner/sdk/include/pref/include -O2 -fPIC `pkg-config gtk+-2.0
--cflags`
[exec] MozEmbed.cpp:69: error: expected constructor, destructor, or type
conversion before '*' token
[exec] MozEmbed.cpp: In function 'int mozembed_main(int, char**)':
[exec] MozEmbed.cpp:674: error: 'gMsgLock' was not declared in this scope
[exec] MozEmbed.cpp:674: error: 'PR_NewLock' was not declared in this scope
[exec] MozEmbed.cpp:725: error: 'PR_DestroyLock' was not declared in this scope
[exec] MozEmbed.cpp: In function 'void SocketMsgHandler(const char*)':
[exec] MozEmbed.cpp:735: error: 'gMsgLock' was not declared in this scope
[exec] MozEmbed.cpp:735: error: 'PR_Lock' was not declared in this scope
[exec] MozEmbed.cpp:737: error: 'PR_Unlock' was not declared in this scope
[exec] MozEmbed.cpp: In function 'gboolean gs_prepare_cb(GSource*, gint*)':
[exec] MozEmbed.cpp:754: error: 'gMsgLock' was not declared in this scope
[exec] MozEmbed.cpp:754: error: 'PR_Lock' was not declared in this scope
[exec] MozEmbed.cpp:756: error: 'PR_Unlock' was not declared in this scope
[exec] MozEmbed.cpp: In function 'gboolean gs_dispatch_cb(GSource*,
gboolean (void*), void*)':
[exec] MozEmbed.cpp:786: error: 'gMsgLock' was not declared in this scope
[exec] MozEmbed.cpp:786: error: 'PR_Lock' was not declared in this scope
[exec] MozEmbed.cpp:790: error: 'PR_Unlock' was not declared in this scope






[JDIC-493] Fix for aqua LAF native menu disappearing Created: 12/Apr/07  Updated: 12/Apr/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.tray)
Affects Version/s: current
Fix Version/s: None

Type: Task Priority: Major
Reporter: ersatztom Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Mac OS X
Platform: Macintosh


Issuezilla Id: 493

 Description   

When using the aqua LAF on Mac OS X, any menus associated with the focused
window disappear when the tray icon popup menu is activated. I worked around
this by stealing the menubar from the old focused frame when the popup parent
frame gets the focus and giving it back when it looses focus.

This fix has the following caveats:

  • Although it contains code for dealing with awt menus, I haven't tested them
  • There is a brief flicker in the menubar when the icon tray gains and looses foucs
  • This should check the apple.laf.useScreenMenuBar system property and the
    current LAF to make sure that the OS X menubar is being used. Should be a
    simple fix.

Here is my replacement PopupParent class:

static class PopupParent extends JFrame
{
public PopupParent()
{
super("JDIC Tray Icon");
setName("JDIC Tray Icon parent");

/*
try
{
Method setAlwaysOnTop =
this.getClass().getMethod("setAlwaysOnTop", new Class[]

{boolean.class}

);
setAlwaysOnTop.invoke(this, new Object[]

{Boolean.TRUE}

);
}
catch (NoSuchMethodException e)
{
}
catch (Exception e)

{ e.printStackTrace(); }

*/
this.setUndecorated(true);
this.setBounds(0, 0, 0, 0);

this.setJMenuBar(null);
this.setMenuBar(null);

this.addWindowFocusListener(new WindowFocusListener() {
public void windowGainedFocus(WindowEvent we)

{ stealMenu(we.getOppositeWindow()); }

public void windowLostFocus(WindowEvent we)

{ returnMenu(); }

});
}

private Frame menuOwner = null;

private void stealMenu(Window window)

{ if (window == null || !(window instanceof Frame)) return; menuOwner = (Frame) window; if (menuOwner instanceof JFrame && ((JFrame)menuOwner).getJMenuBar() != null) setJMenuBar(((JFrame)menuOwner).getJMenuBar()); else if (menuOwner.getMenuBar() != null) setMenuBar(menuOwner.getMenuBar()); }

private void returnMenu()
{
if (menuOwner != null)

{ if (getJMenuBar() != null && menuOwner instanceof JFrame) ((JFrame)menuOwner).setJMenuBar(getJMenuBar()); else if (getMenuBar() != null) menuOwner.setMenuBar(getMenuBar()); }

setJMenuBar(null);
setMenuBar(null);

menuOwner = null;
}
}






[JDIC-495] Patch: explicit imports, Makefile cleanups, lookup for browser executable Created: 16/May/07  Updated: 16/May/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Task Priority: Major
Reporter: fberger Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: Macintosh


Attachments: Text File issue-495.patch    
Issuezilla Id: 495

 Description   

The attached patch adds the following:

  • Explicit imports due to ambiguousness between java.awt.Desktop and
    org.jdesktop.jdic.desktop.Desktop etc. for Java 6.
  • Use pkg-config in Unix Makefile to remove system specific path dependencies
    and make it work on Ubuntu Feisty.
  • Also look up browser executable in java.library.path, this allows the demos
    to work after "ant buildlinux" has been called:

/demo/Browser$ java -cp ../../dist/linux/jdic.jar:. Browser

Ubuntu users might have to export LD_LIBRARY_PATH=/usr/lib/mozilla/ before
running the demo.



 Comments   
Comment by fberger [ 16/May/07 ]

Created an attachment (id=302)
Described patch





[JDIC-491] Changelog for version 20061102 contains nothing for version 20061102 Created: 20/Mar/07  Updated: 20/Mar/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: jannaude Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: PC


Issuezilla Id: 491

 Description   

Changelog for version 20061102 contains nothing for version 20061102, but web
page lists defect fixes and enhancements.






[JDIC-489] EXCEPTION_ACCESS_VIOLATION during org.jdesktop.jdic.desktop.Desktop.mail Created: 13/Mar/07  Updated: 13/Mar/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.desktop)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Major
Reporter: eppesuig Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows 2000
Platform: PC


Attachments: Text File hs_err_pid5768.log     Text File hs_err_pid8984.log     Text File hs_err_pid9728.log    
Issuezilla Id: 489

 Description   

Hi all,
we have a windows 2003 SBS installation with java SDK 1.5.0 update 11. JDIC
version is 0.9.1.

We use this method
------------------
public static void openNewBrowserEmailWithJDIC( ArrayList to, ArrayList cc,
ArrayList bcc,
String subject, String content, ArrayList attachment )
throws MessageException
{
org.jdesktop.jdic.desktop.Message msg = new org.jdesktop.jdic.desktop.Message();
msg.setToAddrs(to);
msg.setCcAddrs(cc);
msg.setBccAddrs(bcc);
msg.setSubject( subject );
msg.setBody( content );

try

{ msg.setAttachments(attachment); }

catch(IOException ioe)

{ throw new MessageException( Messages.getLocal( "email_problem" ), ioe ); }

try

{ org.jdesktop.jdic.desktop.Desktop.mail(msg); }

catch(org.jdesktop.jdic.desktop.DesktopException de)

{ throw new MessageException( Messages.getLocal( "open_email_browser_not_impl" ), de ); }

}
------------------

and we get an EXCEPTION_ACCESS_VIOLATION.

I cannot help more on this problem than submitting three different JVM logs.

Thanks,
Giuseppe



 Comments   
Comment by eppesuig [ 13/Mar/07 ]

Created an attachment (id=299)
An unexpected error has been detected by HotSpot Virtual Machine

Comment by eppesuig [ 13/Mar/07 ]

Created an attachment (id=300)
An unexpected error has been detected by HotSpot Virtual Machine

Comment by eppesuig [ 13/Mar/07 ]

Created an attachment (id=301)
An unexpected error has been detected by HotSpot Virtual Machine





[JDIC-490] JDIC doesn't work under IBM JVM Created: 18/Mar/07  Updated: 08/Sep/08

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.tray)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Major
Reporter: whp Assignee: michael_shan
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: All


Attachments: Text File blank.txt    
Issuezilla Id: 490

 Description   

1. Sysinfo, Linux 2.6.16
java version "1.5.0"
Java(TM) 2 Runtime Environment, Standard Edition (build pxi32dev-20061002a (SR3) )
IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 Linux x86-32 j9vmxi3223-20061001
(JIT enabled)
J9VM - 20060915_08260_lHdSMR
JIT - 20060908_1811_r8
GC - 20060906_AA)
JCL - 20061002

Using JDIC (tray icon) gives:
org.jdesktop.jdic.init.JdicInitException: java.lang.NoSuchFieldException: sys_paths
at org.jdesktop.jdic.init.JdicManager.initShareNative(Unknown Source)
at org.jdesktop.jdic.tray.internal.ServiceManager.<clinit>(Unknown Source)
at java.lang.J9VMInternals.initializeImpl(Native Method)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:177)
at org.jdesktop.jdic.tray.TrayIcon.<init>(Unknown Source)
at org.jdesktop.jdic.tray.TrayIcon.<init>(Unknown Source)
at free.jin.tray.TrayManager.createIcons(TrayManager.java:179)
at free.jin.tray.TrayManager.start(TrayManager.java:146)
at free.jin.plugin.PluginContext.setAndStart(PluginContext.java:144)
at free.jin.Session.createPlugins(Session.java:195)
at free.jin.Session.<init>(Session.java:119)
at free.jin.ConnectionManager.login(ConnectionManager.java:286)
at free.jin.ConnectionManager.start(ConnectionManager.java:88)
at free.jin.ui.DdiUiProvider$1$2.windowOpened(DdiUiProvider.java:113)
at java.awt.AWTEventMulticaster.windowOpened(AWTEventMulticaster.java:314)
at java.awt.Window.processWindowEvent(Window.java:1223)
at javax.swing.JFrame.processWindowEvent(JFrame.java:296)
at java.awt.Window.processEvent(Window.java:1184)
at java.awt.Component.dispatchEventImpl(Component.java:3996)
at java.awt.Container.dispatchEventImpl(Container.java:2059)
at java.awt.Window.dispatchEventImpl(Window.java:1810)
at java.awt.Component.dispatchEvent(Component.java:3844)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:545)
at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:268)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:197)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:191)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:183)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:144)
Caused by: java.lang.NoSuchFieldException: sys_paths
at java.lang.Class.getDeclaredFieldImpl(Native Method)
at java.lang.Class.getDeclaredField(Class.java:476)
... 28 more
reflect - bad awtHandle.
/opt/ibm-java2-i386-50/jre/jre/lib/i386/libawt.so: nie można otworzyć pliku
obiektu dzielonego: Nie ma takiego pliku ani katalogu



 Comments   
Comment by botunge [ 08/Sep/08 ]

Created an attachment (id=312)
This issue has been corrected in version 0.9.5 of jdic. Using setUrl jdic is able to display file content using IE 7.0 and IBMjava 1.5





[JDIC-487] Add menu items to File Explorer context menu Created: 27/Feb/07  Updated: 27/Feb/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.desktop)
Affects Version/s: 0.8.4
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: dmkoelle Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 487

 Description   

In Microsoft's File Explorer, right-clicking on a file brings up a context menu.
Native applications are able to add items to this menu. I see the need to
create a Java application that can add items to the menu to create tools that
work on individual files.

I'm not familiar enough with Mac-OSX or Unix to know how their file explorers
handle context menus.






[JDIC-486] Disapearing Sub Menu Label after Mnemonic Created: 26/Feb/07  Updated: 26/Feb/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.tray)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Major
Reporter: cknight19 Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: PC


Issuezilla Id: 486

 Description   

If you add a submenu item with a Mnemonic then run the app and display the
submenu options and press the Mnemonic key, the next time you show the menu the
submenu's label is blank until you hover the mouse over it.

You can test this by running your demo code "jdic/demo/Tray/Tray.java" . Go
into the submenu "A submenu" and press CTRL+2, now go back into the tray menu.
You will notice that the submenu label "A submenu" is blank until you roll your
mouse over it.






[JDIC-485] org.jdesktop.jdic.desktop.Desktop.open does not handle filenames including spaces Created: 22/Feb/07  Updated: 22/Feb/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.desktop)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Major
Reporter: eppesuig Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: All


Issuezilla Id: 485

 Description   

Hi,
I am creating a file named "/tmp/file name.txt" and then call method
org.jdesktop.jdic.desktop.Desktop.open( new java.io.File( "/tmp/file name.txt" ))
expecting to have my editor pop up with this file.

I get the editor window, with a new file, i.e., it does not get the file name.
The command issued by jdic and displayed by the ps command is

gedit file:///tmp/ATTILEGALI ATTILEGALI48061.tmp

I think the problem is that the argument should be single quoted, or url encoded
('+' or '%20' instead of spaces).

Thanks,
Giuseppe






[JDIC-483] Remove Linux tray icon border Created: 11/Jan/07  Updated: 11/Jan/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.tray)
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: squig Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: PNG File lw-systray-with-border.png     PNG File lw-systray-without-border.png     Text File remove-border-20070111.patch    
Issuezilla Id: 483

 Description   

Here is a very simple patch to remove the border from the systray icon on
Linux. See the attached screenshots for an example.



 Comments   
Comment by squig [ 11/Jan/07 ]

Created an attachment (id=296)
Removes systray icon border on Linux

Comment by squig [ 11/Jan/07 ]

Created an attachment (id=297)
current look

Comment by squig [ 11/Jan/07 ]

Created an attachment (id=298)
look without patch





[JDIC-482] Let libtray compile on FreeBSD. Created: 26/Dec/06  Updated: 26/Dec/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.tray)
Affects Version/s: current
Fix Version/s: None

Type: Task Priority: Major
Reporter: thth Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: FreeBSD
Platform: Other


Attachments: XML File patch-jdic_build.xml     HTML File patch-jdic_src_unix_native_jni_Makefile    
Issuezilla Id: 482

 Description   

With the two following patches, libtray builds and runs fine on FreeBSD:

http://people.freebsd.org/~thierry/ports/patch-jdic_build.xml
http://people.freebsd.org/~thierry/ports/patch-jdic_src_unix_native_jni_Makefile

Note: these patches are relative to jdic-20061102-src.zip.



 Comments   
Comment by thth [ 26/Dec/06 ]

Created an attachment (id=294)
patch-jdic_build.xml

Comment by thth [ 26/Dec/06 ]

Created an attachment (id=295)
patch-jdic_src_unix_native_jni_Makefile





[JDIC-481] Null charset name problem on mac Created: 22/Dec/06  Updated: 22/Dec/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.8.4
Fix Version/s: None

Type: Bug Priority: Major
Reporter: divol Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Mac OS X
Platform: Macintosh


Issuezilla Id: 481

 Description   

charsetName = BrowserEngineManager.instance().getActiveEngine().getCharsetName();
Charset charset = Charset.forName(charsetName);

decoder = charset.newDecoder();

encoder = charset.newEncoder();

throws this

Exception in thread "main" java.lang.IllegalArgumentException: Null charset name
at java.nio.charset.Charset.lookup(Charset.java:430)
at java.nio.charset.Charset.forName(Charset.java:497)
at masque.Test.<init>(Test.java:35)
at masque.Test.main(Test.java:48)

any fixes ?

the real time bug :
Exception in thread "EventThread" java.lang.IllegalArgumentException: Null
charset name
at java.nio.charset.Charset.lookup(Charset.java:430)
at java.nio.charset.Charset.forName(Charset.java:497)
at org.jdesktop.jdic.browser.internal.MsgClient.<init>(Unknown Source)
at org.jdesktop.jdic.browser.internal.NativeEventThread.run(Unknown Source)



 Comments   
Comment by divol [ 22/Dec/06 ]

to retrieve text encoding using webkit

WebPreferences *webPref = [webView preferences];
NSLog([webPref defaultTextEncodingName]);





[JDIC-480] Tray action listener does not work without adding menu Created: 17/Dec/06  Updated: 17/Dec/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.tray)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: phraktle Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Mac OS X
Platform: Macintosh


Issuezilla Id: 480

 Description   

If the TrayIcon does not get a menu as a parameter, the action listener does not get invoked on clicking
the icon.

Have only tested on Mac OS X.

This does NOT work:

TrayIcon ti = new TrayIcon(icon, "Hourglass");
ti.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e)

{ System.out.println("actionPerformed()"); }
});

This, however, works:

JPopupMenu menu = new JPopupMenu("Menu");
TrayIcon ti = new TrayIcon(icon, "Hourglass", menu);
ti.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) { System.out.println("actionPerformed()"); }

});






[JDIC-479] Patch to make WebKitWebBrowser render when tab becomes visible Created: 08/Dec/06  Updated: 08/Dec/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Task Priority: Major
Reporter: fberger Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: Macintosh


Attachments: Text File render-in-tabs.patch    
Issuezilla Id: 479

 Description   

The attached patch makes the WebKitWebBrowser display instantly after the tab
it has been in has been selected.



 Comments   
Comment by fberger [ 08/Dec/06 ]

Created an attachment (id=293)
described patch





[JDIC-478] No charset is specified by the WebKitBrowserEngine(getCharsetName()) Created: 07/Dec/06  Updated: 07/Dec/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Major
Reporter: michael_shan Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 478

 Description   

As the title.






[JDIC-476] Add API to determine size of IconTray Created: 06/Dec/06  Updated: 06/Dec/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.tray)
Affects Version/s: current
Fix Version/s: None

Type: Task Priority: Major
Reporter: squig Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Text File jdic-getsize.patch    
Issuezilla Id: 476

 Description   

The patch adds a getSize() method to TrayIconService to determine the size of
the tray panel. It is used to calculate the position of a notification window
which is displayed relative to the location of the icon.



 Comments   
Comment by squig [ 06/Dec/06 ]

Created an attachment (id=292)
Adds TrayIcon.getSize()





[JDIC-475] Patch to use nspr monitors Created: 06/Dec/06  Updated: 08/Dec/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Task Priority: Major
Reporter: fberger Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Text File monitor.patch    
Issuezilla Id: 475

 Description   

The attached patch removes busy waiting and uses mozilla's PRMonitor to wait
for the response from the Java side.

The thread now waits indefinitely instead of the 20ms as before. We can
reintroduce this again, but I'd prefer if the browser did nothing in case it
didn't hear back from the Java side instead of opening the url.

The patch has been compiled and tested on Linux.

I would also like to know if there's a reason the code uses the Linux and
Windows specific mutexes instead of the nspr ones from mozilla. If API
familiarity was the reason, I'd like to switch to the PRLocks to make the code
more readable.

Thanks,
Felix



 Comments   
Comment by fberger [ 06/Dec/06 ]

Created an attachment (id=291)
described patch

Comment by fberger [ 06/Dec/06 ]

Forgot to set correct issue type.

Comment by fberger [ 08/Dec/06 ]

I realized that this code is shared with the IE windows implementation, so I'm
working on a platform independent monitor class.





[JDIC-473] patch to remove javaws dependency from jdic Created: 30/Nov/06  Updated: 16/May/07

Status: Open
Project: jdic
Component/s: JDIC general
Affects Version/s: current
Fix Version/s: None

Type: Task Priority: Major
Reporter: fberger Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Text File remove-javaws-dependency.patch    
Issuezilla Id: 473

 Description   

The attached patch removes the dependency on the JNLPClassLoader by using
reflection.



 Comments   
Comment by fberger [ 30/Nov/06 ]

Created an attachment (id=290)
described patch

Comment by michael_shan [ 30/Nov/06 ]

This is great! Thanks fberger!

Comment by michael_shan [ 30/Nov/06 ]

Dong has proved that the reflection method "findLibrary" is different under
different versions of JDK.Will look into it.

Comment by fberger [ 04/Dec/06 ]

At worst it might be protected, which can be remedied, by setting

method.setAccessible(true);

Comment by fberger [ 05/Dec/06 ]

Hi Dong,

I'd be interested to know why you chose isAssignableFrom() over isInstance() in
your implementation?

BTW, we might as well remove the JNLPClassLoader check and just access
findLibrary() via reflection. If it returns a valid string, we don't have to
care about what kind of class loader it was.

Comment by michael_shan [ 05/Dec/06 ]

>I'd be interested to know why you chose isAssignableFrom() over isInstance() in
>your implementation?
The simple reason is that the "isInstance" method didn't work. I didn't
investigate deeply why that happened.

>BTW, we might as well remove the JNLPClassLoader check and just access
>findLibrary() via reflection. If it returns a valid string, we don't have to
>care about what kind of class loader it was.
We can only depend on JNLPClassLoader's findLibray method,since it's not a
standard method for all class loaders and even if a class loader happens to have
this method, we still can't make sure it will behave as we want (return a native
lib path). We don't want unexpected things happen and need this strong type
check. Thanks!

regards,
Michael

Comment by fberger [ 06/Dec/06 ]

> We can only depend on JNLPClassLoader's findLibray method,since it's not a
> standard method for all class loaders and even if a class loader happens to
> have this method, we still can't make sure it will behave as we want (return
> a native lib path). We don't want unexpected things happen and need this
> strong type check. Thanks!

It's a protected method since version 1.2, that's why I thought we could call
it and either it returns something valid or null in which case we would throw
the exception again.

Comment by fberger [ 16/May/07 ]

This issue can be closed.





[JDIC-468] Patch that fixes engine availabilty Created: 27/Nov/06  Updated: 16/May/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Task Priority: Major
Reporter: fberger Assignee: dongdongyang
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Text File browser-availability.patch    
Issuezilla Id: 468

 Description   

The attached patch cleans up engine availability. The WebKitEngine is now only
available on Mac OS, Mozilla as before on all platforms (not sure if that's
true for Mac OS), and IE only on Windows.



 Comments   
Comment by fberger [ 27/Nov/06 ]

Created an attachment (id=284)
described patch

Comment by michael_shan [ 27/Nov/06 ]

Assign to Dong.

Comment by fberger [ 16/May/07 ]

This patch has obviously been applied to CVS. Unfortunately, I don't have
enough permissions to close it.

Felix





[JDIC-470] Allow jdic library user to see exceptions during initialzation Created: 28/Nov/06  Updated: 16/May/07

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: fberger Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Java Source File AbstractBrowserEngine.java     Java Source File BrowserEngineTest.java     Text File initialization-listener.patch     Java Source File InitializationListener.java    
Issuezilla Id: 470

 Description   

Exceptions during initialization are caught in WebBrowser.WebBrowser and other
places and are not given to the user of the jdic library. This makes it hard to
report back to the user why the browser component is not available.

The attached patch and files implement an initialization listener that is
notified when initialization succeeded or failed. This made all the more sense
when initialization was still done in the NativeEventThread and there was no
way of knowing when and if the browser was finished initializing.

Now it's done in the same thread in NativeEventThread.init() which is called
from the constructor. This incurs an extra 100ms in start-up time, was this
necessary to fix issue 469?



 Comments   
Comment by fberger [ 28/Nov/06 ]

Created an attachment (id=285)
patch file

Comment by fberger [ 28/Nov/06 ]

Created an attachment (id=286)
Functionality common to all browser engines can be in this class

Comment by fberger [ 28/Nov/06 ]

Created an attachment (id=287)
the listener interface

Comment by fberger [ 28/Nov/06 ]

Created an attachment (id=288)
test case

Comment by fberger [ 04/Dec/06 ]

Hi Michael,

did you have a chance to look at the patch? Please let me know if something's
unclear.

Thanks,
Felix

Comment by fberger [ 16/May/07 ]

Any comments wrt the patch?

It might be obsolete now and before I clean it up again, I wanted to know if
you're generally ok with the approach.

Thanks,
Felix





[JDIC-471] send create event already in addNotify Created: 29/Nov/06  Updated: 16/May/07

Status: Reopened
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Task Priority: Major
Reporter: fberger Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Text File add-notify.patch    
Issuezilla Id: 471

 Description   

Canvas.addNotify creates the component's peer so this is the earliest time the
window handle is available for the native browser. This solved problems with
lazily loading the browser component and adding it to a different component
when paint() was never called.



 Comments   
Comment by fberger [ 29/Nov/06 ]

Created an attachment (id=289)
described patch

Comment by fberger [ 29/Nov/06 ]

changed type to patch

Comment by michael_shan [ 04/Dec/06 ]

Hi Felix,
We can't adapt this code,in fact,we've thought we can get the component's peer
in the addNotify method,while some bug happened. Only the paint method can
assure the peer is available, you can refer the post for more background of this
issue http://forums.java.net/jive/thread.jspa?threadID=6426&tstart=15 .

Comment by fberger [ 04/Dec/06 ]

I'll work on a patch that tries it in addNotify() and again in paint() if the
native component peer was not available in addNotify().

Comment by fberger [ 16/May/07 ]

Hi Michael,

did you have chance to look at the patch?

Thanks,
Felix





[JDIC-460] webBrowser.executeScript("window.print();") do nothing Created: 15/Nov/06  Updated: 15/Nov/06

Status: Open
Project: jdic
Component/s: MacOS
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: chradja Assignee: elliotth
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Mac OS X
Platform: Macintosh


Issuezilla Id: 460

 Description   

When i try to call webBrowser.executeScript("window.print();") on mac os x (intel platform, OS X 10.4.8) it
does nothing (no errors, or even warnings).
I've also try to embed a button in my html page, it works under safari, but not when the page is loaded
inside the jdic web browser.
I've used the given "Browser" example to test this functionality (which i specially need 'of course')






[JDIC-458] willOpenWindow(URL url) doesn't seem to work under slower CPU machine Created: 15/Nov/06  Updated: 15/Nov/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Major
Reporter: michael_shan Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 458

 Description   

Refer http://forums.java.net/jive/thread.jspa?messageID=174241&#174241 for more.
Abstract as below:
I can reproduce it every time, the slow PC never catches the event. The slower
PC is 1.2GHz, the fast PC is 2.8Ghz:

The slow PC doesn't catch the event and there is no debug in JDIC.log

The fast PC does catch the event and there is debug in the JDIC.log saying the
new window was supressed.

The onyl other difference is that the fast PC is using Win XP Pro SP2, whereas
the 'slow' PC is using Win XP Pro.






[JDIC-454] TrayIcon demo occasionally crashes with Seg fault Created: 03/Nov/06  Updated: 07/Nov/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.tray)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: robross Assignee: robross
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Mac OS X
Platform: Macintosh


Attachments: Text File bugFix_454.diff     Text File fix2_454.diff    
Issuezilla Id: 454

 Description   

The current alpha build for the Mac (jdic-20061102-bin-mac) has a bug in the
TrayIcon implementation. There seems to be a race condition in updating the
native icon image that causes a crash about 30% of the time. It only manifested
itself after I implemented support for alpha in the images, so sorry for finding
this bug so late.



 Comments   
Comment by robross [ 06/Nov/06 ]

Created an attachment (id=265)
Bug fix for segmentation fault. Refactored to remove animation thread and implement ImageObserver for the icons.

Comment by michael_shan [ 06/Nov/06 ]

It sas been put into CVS,can it me marked as fixed? Thanks!

Michael

Comment by robross [ 06/Nov/06 ]

Created an attachment (id=267)
Fixes in native code, java class to fix this problem

Comment by michael_shan [ 07/Nov/06 ]

Hi Rob,
"Tue Nov 7 06:46:00 +0000 2006: fix2_454.diff" has been put into CVS. Thanks!

Michael





[JDIC-452] Code optimizing Created: 26/Oct/06  Updated: 26/Oct/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.filetypes)
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: miro Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: PC


Issuezilla Id: 452

 Description   

When I debug the code of JDIC to sole one problem I notice that the code is not
optimized and improved. For example when I call some API method, this method and
the related sub-methods calls the same sub-methods many times where the result
is the same. Also the code is not optimized and dosen't correspond to JDK5+
technics and principles.

If I have time I can do such optimization, but it is better this to be done from
the originator which received the money for that. I know that this is Open
Source, but behind each open source are some kind of financing.



 Comments   
Comment by michael_shan [ 26/Oct/06 ]

Hi Miro,
Very glad you're interested with this issue. Till now, JDIC is totally free and
no money is received. And for consideration of download compatibility, we can't
adapt JDK5+ 's new features, since we can't depend on users to install the
latest JDK. Except the above two considerations, please feel free to optimize
the code. Thanks!

Michael

Comment by miro [ 26/Oct/06 ]

Officially you are right. Unofficially you are TOTALLY NOT RIGHT. I have too
many friends which are involved in Open Source projects some of them are in
dev.java.net. Always from the beginning the project is started without
financing, and then if the idea is good and there is progress unofficially there
is a kernel of people which received money for their work. They have good
salaries as I know.

Will these improvements included in JDK6?

Best Regards,
Miroslav Nachev

Comment by michael_shan [ 26/Oct/06 ]

TrayIcon and Desktop of JDIC have been integrated into JDK1.6,optimizing of them
seem hard to be included anymore. FileTypes isn't adopt by any version of Java
till now. If this idea is included, maybe part of the code will be included (as
our experience of TrayIcon and Desktop, Java team will make relative big changes
to the code). WebBrowser maybe included by Java1.7, but we also can't guarantee
all of our code will be used.
JIDC is supported/lead by Sun,though we don't get money from it,some commercial
projects are using it since it's under LGPL.

Thanks,
Michael

Comment by michael_shan [ 26/Oct/06 ]

You can refer the projects by the link
https://jdic.dev.java.net/feedback/projects.html.

Comment by miro [ 26/Oct/06 ]

I am not agree with you that FileTypes are not included in JDK. The same classes
with the same bugs and source code, just with changed package name are included
in JDK5:
com.sun.deploy.association.*

Comment by michael_shan [ 26/Oct/06 ]

You're right,but they're in the private package of com.sun not public APIs(what
JDIC wants). We're not sure if the optimizing of Filetyes(if it's done) will be
included by JDK1.6, but we'll try to communicate with the Java team and which
will depend on their plans.





[JDIC-449] Desktop.browse doesn't work on gnome when the URL is not a separate option to the command Created: 23/Oct/06  Updated: 23/Oct/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.desktop)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Major
Reporter: duaneg Assignee: armin_chen
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: All


Attachments: Text File handle-embedded-urls.patch    
Issuezilla Id: 449

 Description   

The Desktop.browse method doesn't work under gnome when the browser launch
command does not specify the URL as a separate argument.

Under gnome the user specifies the command to launch the system browser using %s
in place of the URL to open. The code in GnomeBrowserService.cpp (v0.9.1) parses
the command into arguments and replaces any that exactly match "%s" with the
URL. This fails when the %s is part of a longer argument.

For example, in my environment (Gnome 2.14.2 on Gentoo), the default system
browser command is 'mozilla -remote "openurl(%s,new-window)"'. JDIC does not
find the %s since it is embedded in a longer string and starts mozilla without
the correct URL. This causes mozilla to try and load "%s".

To address this the code should search for a %s occurring anywhere within an
argument. I'll attach a patch to address this shortly.



 Comments   
Comment by duaneg [ 23/Oct/06 ]

Created an attachment (id=258)
Handle system broswer commands where %s is embedded within a longer string

Comment by duaneg [ 23/Oct/06 ]

Note that the attached patch only replaces the first instance of %s in any
argument. In theory it should probably replace all instances.





[JDIC-445] build.xml target buildtray is broken Created: 13/Oct/06  Updated: 13/Oct/06

Status: Open
Project: jdic
Component/s: JDIC general
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: robross Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 445

 Description   

I thought this might be a mac-specific build problem, but I just tested this on
windows and got the same error.

The buildtray target in the build.xml ant file does not work. On both the mac &
windows, it fails with this compiler error:

/Users/rross/cvs-java-net/jdic/src/jdic/src/share/classes/org/jdesktop/jdic/tray/internal/ServiceManager.java
(25:31)package org.jdesktop.jdic.init does not exist
/Users/rross/cvs-java-net/jdic/src/jdic/src/share/classes/org/jdesktop/jdic/tray/internal/ServiceManager.java:25:
package org.jdesktop.jdic.init does not exist
import org.jdesktop.jdic.init.JdicManager;
^
/Users/rross/cvs-java-net/jdic/src/jdic/src/share/classes/org/jdesktop/jdic/tray/internal/ServiceManager.java
(64:13)cannot find symbol
/Users/rross/cvs-java-net/jdic/src/jdic/src/share/classes/org/jdesktop/jdic/tray/internal/ServiceManager.java:64:
cannot find symbol
symbol : class JdicManager
location: class org.jdesktop.jdic.tray.internal.ServiceManager
symbol : variable JdicManager
location: class org.jdesktop.jdic.tray.internal.ServiceManager
JdicManager jm = JdicManager.getManager();

this looks like it's a classpath problem in the javac task. The
org.jdesktop.jdic.init is not in the classpath during this compilation task, and
the code in the sourcepath has a dependency on a class in the missing package.

I don't know if the buildtray target is a left-over from a previous build
architecture, and thus is no longer used. I'm pretty sure it's not being called
by the buildall target; so perhaps the best thing to do is remove all the
buildtray targets from the build.xml file.

Rob Ross






[JDIC-438] Produce src release alongside binary release Created: 03/Oct/06  Updated: 03/Oct/06

Status: Open
Project: jdic
Component/s: Screensavers
Affects Version/s: current
Fix Version/s: None

Type: Task Priority: Major
Reporter: markroth8 Assignee: markroth8
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 438

 Description   

For more convenient access to the source code for a release, so people don't
need to check it out from CVS to see the source.






[JDIC-433] Provide jdic build under Mac os Created: 18/Sep/06  Updated: 07/Nov/06

Status: Open
Project: jdic
Component/s: IconService
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: michael_shan Assignee: lordy
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: GZip Archive jdic-20061020-131725.tar.gz     Zip Archive jdic-20061103_mac.zip     Zip Archive jdic-bin-mac-20061107.zip     Zip Archive jdic-mac_os_x-20061031.zip     Zip Archive jdic_macos_binary_20061106.zip    
Issuezilla Id: 433

 Description   

We need update the web browser demo to run under Mac os when build for Mac os is
ready. Refer http://forums.java.net/jive/thread.jspa?messageID=154061&#154061
for detail.



 Comments   
Comment by michael_shan [ 17/Oct/06 ]

Use this issue to provide build of JDIC under mac os.

Comment by michael_shan [ 17/Oct/06 ]

Use this issue to get build of JDIC under Mac os.

Comment by lordy [ 20/Oct/06 ]

I will provide the mac os x build.

Comment by lordy [ 20/Oct/06 ]

Created an attachment (id=257)
build from 20061020-131725 CEST

Comment by michael_shan [ 23/Oct/06 ]

Thanks Chris!

Comment by robross [ 01/Nov/06 ]

Created an attachment (id=263)
jar and jni lib files for Mac OS X build of JDI, including TrayIcon service. Sorry I am not sure how to name this file.

Comment by robross [ 02/Nov/06 ]

Created an attachment (id=264)
Updated binary Mac OS build with jdic jar, jni libs, and demos, javadocs

Comment by robross [ 06/Nov/06 ]

Created an attachment (id=266)
Latest Mac binary build, including fix for JDIC-454

Comment by michael_shan [ 06/Nov/06 ]

Thanks Rob!The binary build with JDIC-454 fix has been uploaded.

Comment by robross [ 07/Nov/06 ]

Created an attachment (id=269)
Latest Mac binary build, including fix for JDIC-455





[JDIC-423] Embedded mozilla cannot open linked images, css Created: 11/Aug/06  Updated: 11/Aug/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: aloisio_ribeiro Assignee: armin_chen
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows 2000
Platform: PC


Issuezilla Id: 423

 Description   

I tried embedding mozilla (mozilla-win32-1.7.13, zipped
distribution) using jdic-20060613-bin-cross-platform
and it worked fine for external urls (http://)

However, for our application it is required to open a local
html file, with external images and stylesheets. In this case
the page is opened, but the style information is lost (css
not loaded) and the images are replaced with the broken link
icon. If I inline the css information, the styles are applied
normally.

Opening the file directly with mozilla.exe works as expected
(images and styles ok).

I used the code in the FAQ ("How to choose IE or Mozilla
browser?").






[JDIC-422] IWebBrowser missed setURL(url,postData,httpHeader) method Created: 11/Aug/06  Updated: 30/Sep/06

Status: Reopened
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Major
Reporter: michael_shan Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 422

 Description   

IWebBrowser missed setURL(url,postData,httpHeader) method.



 Comments   
Comment by michael_shan [ 11/Aug/06 ]

Added this method to IWebBrwoser interface with sample code to use it.

Comment by lordy [ 11/Aug/06 ]

Not fixed in WebKitWebBrowser: https://jdic.dev.java.net/source/browse/jdic/src/jdic/src/mac_os_x/
classes/org/jdesktop/jdic/browser/WebKitWebBrowser.java?rev=1.1&view=auto&content-type=text/
vnd.viewcvs-markup

Comment by michael_shan [ 20/Aug/06 ]

Hi Christ,
Does the WebKit support this method? I have no idea on that,will you please fix
this? Thanks!

Michael

Comment by michael_shan [ 30/Sep/06 ]

Provided an unimplented method which will throw exception if it is called.





[JDIC-419] Using JOGL with new JSR packages Created: 19/Jul/06  Updated: 11/Aug/06

Status: Open
Project: jdic
Component/s: Screensavers
Affects Version/s: 0.8.4
Fix Version/s: None

Type: Task Priority: Major
Reporter: m4c0 Assignee: markroth8
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Text File jdic-screensaver-jsr231.patch    
Issuezilla Id: 419

 Description   

Why is screensaver API still using "net.java.games.jogl" package? The new
JSR-231 packages are "javax.media.opengl". I guess it is time to change it.

I love Java Screen Savers and I love using OpenGL with Java, but I can't use
both together, because the native DLLs aren't retrocompatible, JSSs needs DLLs
on Windows System's folder, and I want to use JSR-231 version in my programs...



 Comments   
Comment by markroth8 [ 19/Jul/06 ]

I agree. This should be changed to match the standard.

Comment by stt [ 11/Aug/06 ]

Created an attachment (id=250)
Here's a patch to get screensavers to work with JSR-231 jogl (simple enough)





[JDIC-416] Exception calling TrayIcon.displayMessage in KDE 3.5 on FC4 Created: 14/Jul/06  Updated: 14/Jul/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.tray)
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Bug Priority: Major
Reporter: eduardo_valentim Assignee: armin_chen
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: PC


Issuezilla Id: 416

 Description   

Exception:
==========

Exception in thread "Thread-25" java.lang.ClassCastException:
sun.awt.EmbeddedFrame$NullEmbeddedFramePeer
at sun.awt.X11.XWindowPeer.postInit(XWindowPeer.java:147)
at sun.awt.X11.XBaseWindow.init(XBaseWindow.java:117)
at sun.awt.X11.XBaseWindow.<init>(XBaseWindow.java:150)
at sun.awt.X11.XWindow.<init>(XWindow.java:86)
at sun.awt.X11.XComponentPeer.<init>(XComponentPeer.java:100)
at sun.awt.X11.XCanvasPeer.<init>(XCanvasPeer.java:22)
at sun.awt.X11.XPanelPeer.<init>(XPanelPeer.java:27)
at sun.awt.X11.XWindowPeer.<init>(XWindowPeer.java:53)
at sun.awt.X11.XToolkit.createWindow(XToolkit.java:677)
at java.awt.Window.addNotify(Window.java:465)
at java.awt.Window.pack(Window.java:484)
at
org.jdesktop.jdic.tray.internal.impl.GnomeTrayIconService$BalloonMessageWindow.doShow(GnomeTrayIconService.java:509)
at
org.jdesktop.jdic.tray.internal.impl.GnomeTrayIconService$BalloonMessageWindow.access$1100(GnomeTrayIconService.java:346)
at
org.jdesktop.jdic.tray.internal.impl.GnomeTrayIconService$BalloonMessageWindow$5.run(GnomeTrayIconService.java:477)

Enviroment:
===========
Linux Fedora Core 4 (2.6.17-1.2139_FC4smp)
KDE version: 3.5.3-0.2.fc4 Red Hat
Machine: i686
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_04-b05)
Java HotSpot(TM) Client VM (build 1.5.0_04-b05, mixed mode, sharing)






[JDIC-414] Settings dialog should appear in the system LAF Created: 13/Jul/06  Updated: 13/Jul/06

Status: Open
Project: jdic
Component/s: Screensavers
Affects Version/s: 0.9.1
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: normanfo Assignee: markroth8
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 414

 Description   

The generated settings dialog of the saver should appear in the system LAF (e.g.
Windows XP under Windows XP), but it is Swing Metal.






[JDIC-412] More sync operation support for browser Created: 09/Jul/06  Updated: 09/Jul/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: simonmcmahon Assignee: armin_chen
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 412

 Description   

More sync functions for org.jdesktop.jdic.browser.WebBrowser, like syncSetURL
(URL url, ...), including equivalent syncSetContent() functions. Alternatively
a setSynchronous(boolean sync) to make all browser content update/change
functions synchronous.

Reason is that I have had problems with browsers using external programs (e.g.
IE using WINWORD) to render content and the synchronous operations seem to work
OK.






[JDIC-411] Cleanup IWebBrowser interface Created: 02/Jul/06  Updated: 02/Jul/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: lordy Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 411

 Description   

The methods isSynchronize, getInstanceNum, getNativeWindow, as i know, are only important for
WebBrowser class. Now with WebKitWebBrowser, issue #409 with JEditorPaneWebBrowser and issue
#410 with WebBrowserBean there are three implementations that don't need this methods, versus one
that need it.

The methods only needed in NativeEventThread, and i think there would never be a second
implementation of WebBrowser, so we can refer to WebBrowser in NativeEventThread instate of
IWebBrowser.
Another solution would be a MozIeWebBrowser interface which extends IWebBrowser and add this
methods and use it in WebBrowser and NativeEventThread.

I'm also not sure if we real need setInitFailureMessage, getInitFailureMessage, setInitialized and
isInitialized.






[JDIC-410] JavaBean support for browser component Created: 02/Jul/06  Updated: 02/Aug/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: lordy Assignee: michael_shan
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Microsoft Word WebBrowserBean.java.tgz     Zip Archive WebBrowserBeanIssue.zip    
Issuezilla Id: 410

 Description   

GUI Builder getting better and better, and more and more people recommend to use gui builder. So we
should make it possible to use jdic browser with gui builder.

Out of the box it is impossible to use browser component in a gui builder because the following
resounds:

  • every implementation needs native libs
  • IWebBrowser browser = BrowserManager.getInstance() is not JavaBean compatible

The first resound is address in issue #409, and the second with this issue.

A simple wrapper is the solution, for example:
public class WebBrowserBean extends Container implements IWebBrowser {
IWebBrowser browser;

/** Creates a new instance of WebBrowserBean */
public WebBrowserBean()

{ setLayout(new BorderLayout()); browser = BrowserManager.getInstance(); add(browser.asComponent(), BorderLayout.CENTER); }

public void setURL()

{ browser.setURL(); }

...
}

Btw i think we should rename WebBrowser to IeMozWebBrowser or something like that and call this
WebBrowserBean WebBrowser. So the normal user only need to know WebBrowser...



 Comments   
Comment by lordy [ 02/Jul/06 ]

Created an attachment (id=244)
fast hack to try it out

Comment by michael_shan [ 26/Jul/06 ]

Created an attachment (id=246)
Some draf fiels I've done fyi.

Comment by michael_shan [ 26/Jul/06 ]

Hi Chris,
Agree with your thoughts, and thank you very much ! I uploaded some changes
I've done to support the way to get web browser from engine FYI. Just some try
code and not finished and still need to be tested under mac.

Thanks!
Michael

Comment by lordy [ 27/Jul/06 ]

I see you add an abstract class ABrowserEngineImpl.java for that. In my tests I simple implement
getWebBrowser() in every Engine.

MozillaEngine.java and InternetExplorerEngine.java:
public IWebBrowser getWebBrowser()

{ return new WebBrowser(); }

WebKitEngine.java:
public IWebBrowser getWebBrowser()

{ return new WebKitWebBrowser(); }

JEditorPaneEngine.java:
public IWebBrowser getWebBrowser()

{ return new JEditorPaneWebBrowser(); }

The good thing is we so need no new class, and I see no bad thing in doing it this way.

Comment by michael_shan [ 27/Jul/06 ]

Ok, this is better. Another issue,since we've provided JEditorPaneEngine, we
should also support users use bem(BrowserEngineManager) to set it as the default
one.

Comment by lordy [ 27/Jul/06 ]

Current bem support setActiveEngine, so can you describe what you mean is different to setActiveEngine
and "support users use bem(BrowserEngineManager) to set it as the default
one"(setDefaultEngine?)?

Comment by michael_shan [ 27/Jul/06 ]

Hi Chris,

Support users to set JEditorPaneEngine as the default one like
"bem.setActiveEngine(bem.JEDITORPANE)".

Comment by lordy [ 28/Jul/06 ]

I see no reason why bem.setActiveEngine(bem.JEDITORPANE) should not work yet, because
issue 409 should also add JEditorPaneEngine to bem in initExitingEngines and as public static String
JEDITORPANE = "JEditorPane";

Comment by michael_shan [ 02/Aug/06 ]

"Issue 409 should also add JEditorPaneEngine to bem in initExitingEngines and as
public static String JEDITORPANE = "JEditorPane"; "

Yes, that's just what I mean.





[JDIC-409] JEditorPane as fallback Browser Created: 02/Jul/06  Updated: 27/Jul/06

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.browser)
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: lordy Assignee: michael_shan
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: File Archive.tgz    
Issuezilla Id: 409

 Description   

There should be a fallback if something with the native libs goes wrong, or they a not available.



 Comments   
Comment by lordy [ 02/Jul/06 ]

Created an attachment (id=243)
fast hack to try it out

Comment by michael_shan [ 26/Jul/06 ]

Hi Chris,
Thank you for you support. Agree with this idea.
One question is in what case the "Beans.isDesignTime()" will return true? And
why then we'll adapt JEditorPaneWebBrowser but not web kit or web brower(for
none mac platform)? Thanks!

Regards,
Michael

Comment by lordy [ 27/Jul/06 ]

Beans.isDesignTime() returns true in GUI builder.
When I use Beans.isDesignTime() I was only thinking about the use of JEditorPaneWebBrowser in GUI
builders.

But to be a real fallback now I think we shoud to it so:

In WebBrowserUtil.java:
/**

  • Gets the native browser path.
  • @return the path of the default browser in the current system
    */
    public static String getDefaultBrowserPath() {
    if (browserPath == null)
    Unknown macro: { try { loadLibrary(); browserPath = nativeGetBrowserPath(); } catch(Exception e) { browserPath = javax.swing.JEditorPane.class.toString(); } }

    return browserPath;
    }

In JEditorPaneEngine.java:
public boolean isDefaultBrowser(String path)

{ return path.equals(javax.swing.JEditorPane.class.toString()); }

So if loading the libs throws an expection JEditorPane is default.

Comment by michael_shan [ 27/Jul/06 ]

I don't want to hard code the relationship between engines and web browsers
orginally, but it's some complicate to introduce a new class to do this. Just
use your way then, simple is better . Thank you Chris.





[JDIC-98] Can not generate package by using relative path to the JNLP file on Solaris Created: 24/Sep/04  Updated: 29/Apr/05

Status: Open
Project: jdic
Component/s: Packager
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: conny Assignee: joey_shen
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Solaris
Platform: Sun


Issuezilla Id: 98

 Description   

On Solaris, can not generate package by using relative path of the JMLP file.
The following message was printed on the terminal:

— Output messages while generating the PKG package —

    1. Building pkgmap from package prototype file.
      ERROR in ./jnlps/notepad/prototype:
      no object for <images/notepad.gif> found in local path
      no object for <notepad.jar> found in local path
      no object for <notepad.jnlp> found in local path
      no object for <notepad.jnlp.bak> found in local path
      no object for <pkginfo> found in local path
      no object for <checkinstall> found in local path
      no object for <postinstall> found in local path
      no object for <postremove> found in local path
      pkgmk: ERROR: unable to build pkgmap from prototype file
    2. Packaging was not successful.





[JDIC-88] Allow multiple JARs for screensavers Created: 09/Sep/04  Updated: 29/Apr/05

Status: Open
Project: jdic
Component/s: Screensavers
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: markroth8 Assignee: markroth8
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 88

 Description   

It should be possible to deliver a screensaver in multiple JARs instead of
forcing it all in one JAR.

The only way to do this today is to include the list of JARs separated by ':' or
';'. However, Windows and Unix use different separators so one has to manually
go in and adjust the Windows vs. Unix binaries.

The SDK should be adjusted so that a list of JARs separated by ':' will change
to ';' on Windows so that multiple JARs can be included in the classpath for the
screensaver.



 Comments   
Comment by markroth8 [ 09/Sep/04 ]

Added amira to cc list





[JDIC-90] Please add tray notification pop-ups Created: 14/Sep/04  Updated: 08/Jan/05

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.tray)
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: jknowles Assignee: bino_george
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 90

 Description   

As requested in this forum thread:

http://www.javadesktop.org/forums/thread.jspa?threadID=3598

Please add notification pop-ups to the systray project.



 Comments   
Comment by georgez [ 08/Jan/05 ]

Reassigned to the "JDIC API (package org.jdesktop.jdic.tray)" subcomponent, as
from release 0.8.6, Tray Icon code/API was incorporated into JDIC. The "tray"
subcomponent is deleted.





[JDIC-91] 0.8.5 FreeBSD port Created: 15/Sep/04  Updated: 16/Dec/04

Status: Open
Project: jdic
Component/s: JDIC API general
Affects Version/s: 0.8.5
Fix Version/s: None

Type: Task Priority: Major
Reporter: hmichelon Assignee: georgez
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: FreeBSD
Platform: PC


Attachments: Text File issue91_0.8.5_freebsd_1.diff     Text File jdic-0.8.5-freebsd.diff    
Issuezilla Id: 91

 Description   

in src/jdic/src/unix/native/jni/Makefile:
Since libdl, libpthread and librt are OS-specific libraries, move -ldl,
-lpthread and -lrt in OS-dependent part of the Makefile
This changes aren't specific to the FreeBSD port (but needed because these
libraries are part on libc under FreeBSD, and using them when calling ld cause
an error) and add more "portability" to the makefile.



 Comments   
Comment by hmichelon [ 15/Sep/04 ]

Created an attachment (id=58)
FreeBSD port

Comment by georgez [ 22/Sep/04 ]

Hi Henri,

Sorry for the late response.

The new patch looks fine. I just recreate the patch using -u option, to make it
easier to read. It's checked into the source tree.

Could you help to get a binary 0.8.5 for FreeBSD and send it to me ?

Thanks,

Comment by georgez [ 22/Sep/04 ]

Reassigned to me (georgez).

Comment by georgez [ 22/Sep/04 ]

Created an attachment (id=66)
Updated patch for 0.8.5 on FreeBSD.





[JDIC-85] Configuration patch dose not work on Linux Created: 31/Aug/04  Updated: 16/Dec/04

Status: Open
Project: jdic
Component/s: demo
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: conny Assignee: georgez
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: PC


Issuezilla Id: 85

 Description   

The Browser test case can not run on Linux without setting the environment
variables MOZILLA_FIVE_HOME and LD_LIBRARY_PATH.



 Comments   
Comment by conny [ 31/Aug/04 ]

On Linux, the Configuration patch works well with Mozilla version both 1.4 for
Sun Java Desktop System and 1.4.1 for Sun Java Desktop System, but not with
other versions.

Comment by conny [ 02/Sep/04 ]

This bug can reproduce by using the new released version(Sep.2nd) with Mozilla
1.4.1 from the mozilla.org website. In this build the mozembed-linux-gtk1.2 file
is added into the folder jdic-linux-native, since that the gtk1.2 is used by the
Mozilla 1.4.1 from the mozilla.org website. Now both the file
mozembed-linux-gtk1.2 and mozembed-linux-gtk2 are in this folder. But it seems
that the java code can not determin which file should be used.

The error message is as follow:
+++ Ctrace:
+++ Ctrace: (mozembed-linux-gtk2:2747): Gtk-CRITICAL **: file gtktypeutils.c:
line 43 (gtk_type_unique): assertion `GTK_TYPE_IS_OBJECT (parent_type)' failed
+++ Ctrace:
+++ Ctrace: (mozembed-linux-gtk2:2747): Gtk-CRITICAL **: file gtktypeutils.c:
line 100 (gtk_type_new): assertion `GTK_TYPE_IS_OBJECT (type)' failed





[JDIC-78] junit tests for IconService and AssociationService Created: 11/Aug/04  Updated: 16/Dec/04

Status: Open
Project: jdic
Component/s: JDIC API general
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: chas Assignee: paul_huang
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Zip Archive Tests.zip    
Issuezilla Id: 78

 Description   

I have attached the junit tests which I used to verify the changes for issues
#75 and #76. The build.xml has new targets for testing.

Additionally build.xml features these other changes:

1. Separated jdic.jar into jdic.jar and jdic-platform.jar. This will allow a
single distribution with all jars. Currently, developers must merge multiple
source distributions when setting up a webstart server.

2. Java portions of code can be compiled regardless of platform.

3. Added Implementation-Title and Implementation-Version to jar files. Added
Class-Path to jdic.jar



 Comments   
Comment by chas [ 11/Aug/04 ]

Created an attachment (id=45)
tests for IconService and AssociationService





[JDIC-77] Desktop pluggable provider (from #41) Created: 11/Aug/04  Updated: 16/Dec/04

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.desktop)
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: chas Assignee: georgez
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Zip Archive Desktop.zip    
Issuezilla Id: 77

 Description   

These changes are on top of IconService (issue 75) and AssociationService
(issue 76)

1. Added abstract Provider classes for MailService and BrowserService. This
allows applications to modify or federate these services. Also allows an
application to specify which provider implementation to use via a System property.

2. Layered desktop open/edit/print on top of Action.execute. (issue 37) This
eliminates duplicate code and, for Windows, eliminates the need for the SDK
update (AssocQueryString is no longer being used.) However, this will probably
break Mac OS X.

3. Moved contents of desktop/internal/impl to impl. Interfaces which were in
internal are replaced by abstract classes in desktop/spi.

4. Added StartUp/ShutDown to native code of WinDesktopWrapper.



 Comments   
Comment by chas [ 11/Aug/04 ]

Created an attachment (id=44)
Desktop pluggable provider

Comment by paul_huang [ 16/Sep/04 ]

Hi Chas

I really like your patches. I can see you've spend a lot of time and energy on
these patches and I see these patches as strong consolidation and enhancement to
the current JDIC. I really appreciate your contribution to JDIC project. I will
organize an internal code review for your patches and get back to you ASAP.

Thanks again!

-Paul

Comment by paul_huang [ 29/Sep/04 ]

Chas,

The two function in WinDesktopWrapper.cpp should be
Java_org_jdesktop_jdic_desktop_impl_WinDesktopWrapper_StartUp
Java_org_jdesktop_jdic_desktop_impl_WinDesktopWrapper_ShutDown
Instead of
Java_org_jdesktop_jdic_filetypes_impl_WinDesktopWrapper_StartUp
Java_org_jdesktop_jdic_filetypes_impl_WinDesktopWrapper_ShutDown





[JDIC-74] package.html causes spurious javadoc output Created: 11/Aug/04  Updated: 16/Dec/04

Status: Open
Project: jdic
Component/s: JDIC API general
Affects Version/s: current
Fix Version/s: None

Type: Bug Priority: Major
Reporter: chas Assignee: paul_huang
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Text File packages_html.diff     HTML File t    
Issuezilla Id: 74

 Description   

When creating javadoc, there are several warnings output to the console. The
attached tweeks to the three package.html prevent these warnings.



 Comments   
Comment by chas [ 11/Aug/04 ]

Created an attachment (id=41)
diffs to three package.html files

Comment by paul_huang [ 13/Sep/04 ]

Chas,

Could you please help to specify the warning messages, I get the following
warning messages before applying the patch:
[javadoc]
C:\cvstest\jdicsrc\jdic-0.8.4.1-src\jdic\src\share\classes\org\jdesktop\jdic\filetypes\AssociationService.java:27:
cannot resolve symbol
[javadoc] symbol : class AppAssociationWriterFactory
[javadoc] location: package internal
[javadoc] import org.jdesktop.jdic.filetypes.internal.AppAssociationWriterFactory;
[javadoc] ^
[javadoc]
C:\cvstest\jdicsrc\jdic-0.8.4.1-src\jdic\src\share\classes\org\jdesktop\jdic\filetypes\AssociationService.java:29:
cannot resolve symbol
[javadoc] symbol : class AppAssociationReaderFactory
[javadoc] location: package internal
[javadoc] import org.jdesktop.jdic.filetypes.internal.AppAssociationReaderFactory;
[javadoc] ^
[javadoc]
C:\cvstest\jdicsrc\jdic-0.8.4.1-src\jdic\src\share\classes\org\jdesktop\jdic\desktop\internal\ServiceManager.java:23:
cannot resolve symbol
[javadoc] symbol : class ServiceManagerStub
[javadoc] location: package impl
[javadoc] import org.jdesktop.jdic.desktop.internal.impl.ServiceManagerStub;
[javadoc] ^

However, these warning messages still exist after applying the patch.

Thanks

-Paul

Comment by paul_huang [ 16/Sep/04 ]

Accepted.

Comment by chas [ 01/Oct/04 ]

next attachment show the output I am speaking of

Comment by chas [ 04/Oct/04 ]

Created an attachment (id=73)
the spurious javadoc output

Comment by paul_huang [ 07/Oct/04 ]

Patch accepted and put into branch Issue_74-78, will be merge into trunk from
the branch soon.





[JDIC-76] AssociationService pluggable provider (from #41) Created: 11/Aug/04  Updated: 16/Dec/04

Status: Open
Project: jdic
Component/s: JDIC API (package org.jdesktop.jdic.filetypes)
Affects Version/s: current
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: chas Assignee: paul_huang
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Text File 89.txt     Zip Archive Associations.zip     HTML File t     HTML File t     HTML File t    
Issuezilla Id: 76

 Description   

Well, the changes are quite extensive. I think certain changes are too
intertwined to make separate updates. I don't have much time at this
point to submit these as independent patches so I'm requesting that you
forgive me as you review this lump of changes. I am very willing to
seperate out those changes that are deemed by the team to be worthy of
integration.

1. Added abstract Provider class for AssociationService. This allows
applications to modify or federate these services. Also allows an
application to specify which provider implementation to use via a System
property.

2. Merged AppAssociationReader and AppAssociationWriter interfaces into
the AssociationProvider abstract class. Merged the implementation classes
into Provider classes which extend AssociationProvider.

3. Added Action.execute. (This is necessary for issue #37)

4. Action.hashCode and Association.hashCode now throw
UnsupportedOperationException. As these are mutable objects, they should
not be used as a key in a HashMap.

5. Moved contents of filetypes/internal/impl to impl. Interfaces which
were in internal are replaced by abstract classes in filetypes/spi.

6. Remove unused native methods – particularly in WinRegistryWrapper.

7. Wherever possible, use native windows methods which take unicode
arguments rather than ansi arguments. This eliminates unnecessary
translation to/from ansi.

8. Added StartUp/ShutDown to native code of WinAssociationProvider.

9. Cleaned windows native includes to minimal set.



 Comments   
Comment by chas [ 11/Aug/04 ]

Created an attachment (id=43)
complete association package

Comment by paul_huang [ 14/Sep/04 ]

Hi Chas

It's really ok. Please forgive our late reply. I will look into your code ASAP.
Thanks for your contribution to JDIC project.

-Paul

Comment by paul_huang [ 16/Sep/04 ]

Good patches to consolidate and enhance JDIC.

Comment by paul_huang [ 22/Sep/04 ]

Hi Chas,

I see you add two APIs for the AssociationService by this patch: getAssociation
and getFileName. However, I feel they are more for internal implementation use
and I don't feel we should public these APIs.

-Paul

Comment by paul_huang [ 22/Sep/04 ]

And the same suggestion for registerAssociation(Association, boolean) &
unRegisterAssociation(Association, boolean). I understand you are trying to
provide user option to specify the "hive" in the registry table but I really
think we should not public them as we already have APIs like
registerUserAssociation/registerSystemAssociation/unregisterUserAssociation/unregisterSystemAssociation

-Paul

Comment by paul_huang [ 23/Sep/04 ]

Implementation for Association.equals

Chas, I see you've used actionList.equals(otherActionList) and
fileExtensionList.equlas(otherFileExtensionList) in the implementation of
Association.equals. However, this will return the undesired result.

Say, we construct an Association assoc1 with the action list contains the
commands "open", "print" and "printto" and the other Association assoc2 with the
same commands but in different order, i.e. "print", "printto", "open".

Theoretically, these two Associations should be equals. However, with the
"equals" method implementation, the comparison will return false. So I changed
them into
(actionList.containsAll(otherActionList) && otherActionList.containsAll(actionList))
and
(fileExtensionList.containsAll(otherExtensionList) &&
otherFileExtensionList.containsAll(fileExtensionList))

Comment by paul_huang [ 23/Sep/04 ]

Hi Chas,

Based on the previous threads I've posted, I did the following modification to
the filetypes patches:
1. Move getFileName(URL) from org.jdesktop.jdic.filetypes.AssociationService
down to org.jdesktop.jdic.filetypes.spi.AppUtility
2. Change registerAssociation(Association, boolean) and
unregisterAssociation(Association, boolean) from public to private
3. Move getAssociation(URL) from org.jdesktop.jdic.filetypes.AssociationService
to org.jdesktop.jdic.desktop and set it as private

You may checkout the latest code from the branch Issue_74-78. You are welcome to
raise your oppinion.

Comment by paul_huang [ 29/Sep/04 ]

Hi Chas

I feel that you might missed a file in the patch: WinRegistryWrapper.cpp.

-Paul

Comment by paul_huang [ 29/Sep/04 ]

Sorry, Chas. My mistakes, it seems that the following 2 files could be deleted
from the patch: org.jdesktop.jdic.filetypes.WinRegistryUtil.java,
org.jdesktop.jdic.filetypes.WinRegistryWrapper.java

Accordingly, the file org.jdesktop.jdic.desktop.impl.WinUtility needs some small
changes to use the API from WinAssociationProvider instead of WinRegistryWrapper.

In this way, the file WinRegistryWrapper.cpp will no longer be required.

-Paul

Comment by paul_huang [ 18/Oct/04 ]

Hi Chas,

I have did some changes to the Service-Provider pattern. The original
Service-Provider pattern will support Singleton only. Some of the JDIC
components would require Multiton. The changes will allow developers to specify
which style to be used: Single or Multiton.

You may checkout the latest code from branch Issue_74-78. You are welcome to
bring up any refinement.

Thanks

Comment by chas [ 18/Oct/04 ]

I would suggest the following attached refinements.

Comment by chas [ 18/Oct/04 ]

Created an attachment (id=86)
proposed refinements to multi-instance providers

Comment by paul_huang [ 18/Oct/04 ]

I checked the patch 86 and it seems that the modified ProviderFactory will still
support Singleton only. Let's look at the following code:
--------------------------------
public Provider getProvider() {
if (provider == null)

{ createProvider(); }

return provider;
}
--------------------------------
In this case, the ProviderFactory will only create and return one single
provider in its lifecycle. And the same for CreateProvider(), based on this
patch, the Provider will be created only once.

I don't think this will provide a support for Multiton.

Comment by chas [ 19/Oct/04 ]

The 'provider' member will only get set if this is a singleton ProviderFactory.
Look at method loadProvider, lines 115-116:

if (isSingleton)
provider= ip;

Perhaps this is too subtle without documentation. Please review next attachment.
chas

Comment by chas [ 19/Oct/04 ]

Created an attachment (id=87)
add documentation to previous patch

Comment by chas [ 19/Oct/04 ]

I think the spi packages should be included in the javadoc.

Comment by chas [ 19/Oct/04 ]

Created an attachment (id=88)
Add spi packages to javadoc

Comment by paul_huang [ 22/Oct/04 ]

I checked the patch #87 and I don't think it would support the multiton. The
only way to instantiate a Provider would be through the function
public synchronized Provider getProvider()
However, patch #87 would only allow one Provider to be created.
I will submit a new patch to support Singleton & Multiton. Please check.

Thanks

-Paul

Comment by paul_huang [ 22/Oct/04 ]

Created an attachment (id=89)
Patch to provide support for Singleton & Multiton Provider

Comment by paul_huang [ 22/Oct/04 ]

I am not quite agree with you to put spi into the javadoc. As you could see, we
curretly only public the "functional" component in the javadoc. For spi,
although it's quite important and it does introduce a quite good pattern, it's
not the functional component and it is only used internally.

From another point of view, there are two kinds of developers,
1) The developers who just wish to use JDIC API
2) The developers who coding JDIC itself.

The javadoc is targetting at the 1st kind of developers, who only wish to see
the funcitonal API.
That said, I would like to suggest we leave the spi outside of Javadoc.

-Paul

Comment by chas [ 22/Oct/04 ]

JDK 1.4 javadoc includes at least 7 spi packages: java.awt.im.spi,
java.nio.channels.spi, java.nio.charset.spi, javax.imageio.spi,
javax.naming.spi, javax.security.auth.spi, javax.sound.midi.spi,
javax.sound.sampled.spi – Documenting the spi allows developers to get a
greater sense of how the api works and how it is to be used.





[JDIC-75] IconService implementation (from issue 41) Created: 11/Aug/04  Updated: 03/Mar/05

Status: Open
Project: jdic
Component/s: JDIC API general
Affects Version/s: current
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: chas Assignee: paul_huang
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Zip Archive 75.zip     GZip Archive error.txt.gz     Zip Archive IconService.ZIP     HTML File t     HTML File t     HTML File t     HTML File t     HTML File t2     File test.cpp    
Issuezilla Id: 75

 Description   

Attached is an implementation of an icon service. The icon provider is
pluggable. There is a win32 provider and a Gnome provider. (The gnome provider
has little testing)



 Comments   
Comment by chas [ 11/Aug/04 ]

Created an attachment (id=42)
icon service

Comment by paul_huang [ 16/Sep/04 ]

Hi Chas

Could you please help to illustrate why you used the following code
#pragma pack( 2 )
in WinIconWrapper.cpp.

Thanks

Comment by chas [ 16/Sep/04 ]

The microsoft compiler defaults to 4 or 8 byte sized structures if the pragma is
not used. The offset of GroupEntries within the memory image is improperly
determined without the pragma. See next attachment for the a demonstration of
the sizeof differences.

Comment by chas [ 16/Sep/04 ]

Created an attachment (id=60)
demonstration of sizeof difference

Comment by paul_huang [ 19/Sep/04 ]
      • Issue 39 has been marked as a duplicate of this issue. ***
Comment by paul_huang [ 19/Sep/04 ]
      • Issue 41 has been marked as a duplicate of this issue. ***
Comment by paul_huang [ 27/Sep/04 ]

Bug About IconService
----------------------------
Hi Chas,

I found the following bug during my smoke test for IconService. You may try the
following steps to repeat the bug.

  • Environment: Windows XP with ACDSee 6.0 installed and associate all the
    relevant picture file extension to ACDSee.
  • Try to get the icon image of .bmp, .gif, .jpeg with the following lines of code
    Association tempAssoc = null;
    tempAssoc = AssociationService.getFileExtensionAssociation(fileExtField.getText());
    if (tempAssoc != null) { System.out.println(tempAssoc); Image tempImage = null; tempImage = tempAssoc.getIcon(20); }

You will get the following error message:
java.lang.ArrayIndexOutOfBoundsException: 12064
at org.jdesktop.jdic.icons.impl.WinIconWrapper.TRIPLE(WinIconWrapper.java:84)
at org.jdesktop.jdic.icons.impl.WinIconWrapper.Bitmap(WinIconWrapper.java:146)
at org.jdesktop.jdic.icons.impl.WinIconWrapper.BitmapDir(WinIconWrapper.java:174)
at org.jdesktop.jdic.icons.impl.WinIconWrapper.getImages(WinIconWrapper.java:207)
at
org.jdesktop.jdic.icons.impl.WinIconWrapper.getIconsFromSpecification(WinIconWrapper.java:76)
at org.jdesktop.jdic.icons.impl.WinIconProvider.getIcon(WinIconProvider.java:47)
at org.jdesktop.jdic.icons.IconService.getIcon(IconService.java:65)
at org.jdesktop.jdic.icons.IconService.getIcon(IconService.java:52)

Comment by paul_huang [ 27/Sep/04 ]

Below is the .bmp file Association info FYI.
------------------------------------------
Name: ACDSee.bmp
Description: ACDSee BMP Image
MimeType: image/bmp
Icon File: C:\Program Files\Common Files\ACD Systems\PlugIns\IDE_ACDStd.apl,1
File Extension: .bmp
Action List:
Description:
Verb: ACDPrint
Command: "C:\Program Files\ACD Systems\ACDSee\5.0\