[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [equinox-dev] Query on external class in Equionox framework
|
It seems there is some deadlock in which case a stack trace of the
threads would be helpful. Checkout this document how to retrieve one:
http://wiki.eclipse.org/How_to_report_a_deadlock
BTW, your question is more suitable for the user groups.
BR,
--
Danail Nachev
Senior Software Engineer/Development Tools
ProSyst Labs EOOD
-------------------------------------------------
stay in touch with your product.
-------------------------------------------------
Lucky wrote:
> Hi all,
>
> One external class cannot run in Eclipse's OSGi framework well. It can
> run independently as normal java, so I'm wondering whether there exist
> some limitation in using external classes in an OSGi bundle.
>
> The problem is presented in detail as below:
>
> I'm intended to pack an existing external java class into a bundle of
> standard OSGi. The class in experiment is from a project named Globus
> GridFTP. The class is namely FTPClient, in a binary JAR file provided
> by Globus organization. And I added reference of this JAR file, and
> imported the package.
>
> However, when execute the program, the execution get blocked on the
> construction function of one external class.
> //CODE:
> try{
> System.out.println("Caught host="+host+" port="+port+" new object");
> FTPClient thisClient = new FTPClient(host,port); //Blocked on this line
> System.out.println("FTPClient created"); //This line never reached
> after a long time
> }
> catch (Exception ex)
> {
> System.out.println("Caught exception in service."); //This line
> never reached after a long time.
> }
>
> FTPClient is an external class imported from a Globus JAR file. The
> above code snip is from a function in a bundle's service
> implementation. When calling this service from another bundle,
> execution seems get dead-looped on the construction function, and
> neither its following statement or the catch clause was hit. It is
> definitly not because there's a time-out in the constructor, becasue
> (1) I wait it for a very long time (approx. 1hour and it's still
> there). (2) When running these statements in a normal Java program(not
> under OSGi framework or as a bundle), the constructor could execute
> smoothly and immediately returned.
>
> Thus, I'm wondering that is there currently some limitation in using
> external classes under OSGi framework and as a bundle. Consider this
> class (FTPClient) is dealing with network, I'm wondering whether
> there're some specific requirements for external classes running
> inside a bundle, particularly consider the network operations.
>
> I'll at the same time deliver my query to the Globus side. However, as
> they're not dealing with OSGi development, and their classes in JARs
> could running correctly outside OSGi bundle, I think my primary
> problem should be the lack of knowledge of Equinox implementation of
> OSGi, not of that FTPClient class.
>
> My Eclipse version: 3.2.0
> org.eclipse.osgi package version: 3.3.2.R33x_v20080105
> Globus JAR version: cog-jglobus.jar : ver 1.4
>
> Thanks very much.
>
>
> Warm Regards,
> Ji Li,
> May,22,2008
> _______________________________________________
> equinox-dev mailing list
> equinox-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/equinox-dev
>
>