users@glassfish.java.net

RE: RE: Re: JNI/CompositeApp/Glassfish

From: Markus Karg <karg_at_quipsy.de>
Date: Fri, 29 May 2009 15:17:41 +0200

If all you need is to run a BPEL wrapper around a JNI call then you
should have a look at JAX-WS, included in Java SE 6. No need for any
enterprise stuff at all.

> -----Original Message-----
> From: Martin, Ray [mailto:armart3_at_tycho.ncsc.mil]
> Sent: Freitag, 29. Mai 2009 14:22
> To: users_at_glassfish.dev.java.net
> Subject: RE: Re: JNI/CompositeApp/Glassfish
>
> Yes, Mr. Chris suggested to use jmap and jhat to locate the leak. In
> my
> search for how to use those tools, I found that JNI is not supposed to
> work in EJB. So, I said to myself "wow, I am trying to do stuff that
> you are not even supposed to be doing. It does not really matter
> whether
> there appears to be a leak or not - the specs say don't do it." I
will
> spend many weeks on classloaders and jhat and jmap and... I had a
> deadline to meet to show the great world of Glassfish SOA.
>
> I do not know how to deploy a POJO app (with a BPEL 'face') in a
> composite app. If I knew that, I could call the JNI from the POJO
> (staying out of that EJB world) and meet my deadline and put a smile
on
> my superiors faces. Then later, after my superiors agree that my
> selection of Glassfish is marvelous, then I can look for memory leaks
> or
> whatever. But, right now, it's killing me.
>
> Thanx.
>
> -----Original Message-----
> From: Sanjeeb.Sahoo_at_Sun.COM [mailto:Sanjeeb.Sahoo_at_Sun.COM] On Behalf
Of
> Sahoo
> Sent: Friday, May 29, 2009 8:07 AM
> To: users_at_glassfish.dev.java.net
> Subject: Re: JNI/CompositeApp/Glassfish
>
> Martin,
>
> I am confused. What's your issue? In your first posting you mentioned
> that you were successful in running JNI code inside GlassFish except
> that you suspected some memory leak for which Chris suggested to use
> tools like hat. You were supposed to analyse the memory leak. Have you
> identified the cause? If yes, then tell us and tell us if it needs a
> fix
> in GF.
>
> I have failed to identify if you have any other issue in this email
> thread. Personally, I have not come across many use cases where a J2EE
> app uses JNI. It appears that the spec discourages use of JNI. See [1]
> for some discussion. So, over all, it should work with some
> limitations.
>
> Thanks,
> Sahoo
>
> [1]
http://www.theserverside.com/discussions/thread.tss?thread_id=14057
>
> Martin, Ray wrote:
> > i am readin' and scratchin' for JCA information - WOW. What a
> complex
>
> > convoluted mechanism to merely call a tiny piece of code.
> >
> > i have many Glassfish instances running a variety of things as SOA
> > nodes. One of the things that one of the Glassfish nodes must do is
> > run a mathematical algorithm called a bayesian net.
> >
> > Why should it matter that that one instance is not portable? So, it
> > must run on a specific hardware platform, who cares? All that is
> > necessary is for the classloader to function properly to allow this
> > particular non-portable code to run in a nice simplistic manner.
> >
> > But, no - i now am required to build my own EIS-like system to
> contain
>
> > a daemon process to listen for commands to run a small algorithm.
> > Then i need to create an adapter. Then i need to create a
connector.
>
> > Then i need to ... oh boy.
> >
> > And, there is something wrong with a system in which a Glassfish
node
> > performs some specialty algorithm? Hmm - yep, i am too dumb to
> > understand that.
> >
> >
---------------------------------------------------------------------
> -
> > --
> > *From:* Martin, Ray
> > *Sent:* Friday, May 29, 2009 6:22 AM
> > *To:* users_at_glassfish.dev.java.net
> > *Subject:* RE: RE: RE: JNI/CompositeApp/Glassfish
> >
> > i am too dumb to know that was a solution...
> >
> >
---------------------------------------------------------------------
> -
> > --
> > *From:* Markus Karg [mailto:karg_at_quipsy.de]
> > *Sent:* Friday, May 29, 2009 6:14 AM
> > *To:* users_at_glassfish.dev.java.net
> > *Subject:* RE: RE: JNI/CompositeApp/Glassfish
> >
> > The idea of EJB is to have a portable application which runs on any
> > application server on any operating system on any hardware platform.
> > JNI works only with a particular operating system and hardware
> > platform. These two core ideas are absolutely not compatible. It
just
> > makes no sense to use EJB directly with JNI. If native stuff is
> needed
>
> > in an enterprise application, it has to be provided in the form of a
> > JCA 1.5 adapter. This is the official Java EE solution to bind
> > portable applications (EJB) to platform-specific code (JNI). What
> > problem do you have with that?
> >
> >
> >
> > *From:* Martin, Ray [mailto:armart3_at_tycho.ncsc.mil]
> > *Sent:* Freitag, 29. Mai 2009 12:08
> > *To:* users_at_glassfish.dev.java.net
> > *Subject:* RE: JNI/CompositeApp/Glassfish
> >
> >
> >
> > Very smart people created JNI.
> >
> > Very smart people created EJB.
> >
> >
> >
> > These very smart people make sure that JNI cannot operate within EJB
> -
>
> > why would people do something like that?
> >
> >
> >
> > i have fuddled for months building a system around glassfish - now
it
> > looks like i am back to ServiceMix, where i was a year ago
> >
> >
> >
> >
---------------------------------------------------------------------
> -
> > --
> >
> > *From:* Martin, Ray
> > *Sent:* Thursday, May 28, 2009 12:54 PM
> > *To:* users_at_glassfish.dev.java.net
> > *Subject:* JNI/CompositeApp/Glassfish
> >
> > Does anyone have a JNI application running in Glassfish?
> >
> >
> >
> > I have a third party JNI app (Netica). It runs fine from the
command
> > line.
> >
> >
> >
> > i have an EJBModule and a BPEL project added to a composite app.
The
> > composite app is deployed to Glassfish and runs fine - receiving and
> > responding to SOAP message.
> >
> >
> >
> > i then add the JNI app to the EJBModule and deploy the composite app
> > to Glassfish.
> >
> >
> >
> > there are two SOAP messages to the composite app - setup and
> activate.
> >
> >
> >
> > i issue the setup message - the request and response occur.
> >
> > i issue the activate message - the JNI app runs - all is good - the
> > results are stored in the database.
> >
> > after the JNI app should be completed, the memory usage starts to
> climb.
> >
> >
> >
> > any suggestions?
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: users-help_at_glassfish.dev.java.net
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: users-help_at_glassfish.dev.java.net