Calling JMP from Java with OLE automation<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />I have a potential Pro customer asking for an example of calling JMP from Java. I've looked at all of our OLE automation examples available and don't see anything from Java. Can this be done, and, if so, does anyone have example syntax or reference they can point me to? Thanks!
Re: Calling JMP from Java with OLE automationThanks, Jeff.
For the record, I 100% agree with you that we should not be promoting JMP this way. I just wanted to add the extra information I received re: this prospect request and place it in this thread to keep a record and to provide information to the greater SE community the next time this question comes up.
Best,
Dan
Re: Calling JMP from Java with OLE automationHi Dan, et. al.,
This is not a use case we want to promote.
JMP is not a compute engine. It isn't engineered or tested to be used non-interactively this way. More importantly, in almost all cases, if you want to do this in any enterprise-scale, production way, you will be violating the terms of our license.
The use case you describe is fundamentally different from the Matlab case.
In the Matlab case, we are doing to calling of Matlab, which is engineered, built and tested to be called this way.
In the use case that you and Jerry describe (and Jerry described further in a phone call with me) the user wants to create an external application and call JMP to do analysis and return results. That's very different.
We should all be very careful in any situation like this. Do not promote using JMP like this.
-Jeff
Re: Calling JMP from Java with OLE automationJeff, Jerry --
Catherine gave me some more information on the use case here. The customer is considering JMP Pro for use with a program they develop for the oil and gas industry. As I understand it, they do not want to write their own analytics, but potentially call JMP or JMP Pro to perform statistical analysis on data generated by/through their program.
I see this similar to how I would execute and run MATLAB code from JMP, send data from JMP, execute an algorithm and then return results to JMP for Profiling, Graphing etc.
I think I am understanding their use case, right, Jerry?
A response from Eric Hill was helpful, and worth including here as I think this question will/does come up fairly often:
"Regarding your question about whether somebody could use Java to automate JMP: As I mentioned on the phone, the only way would be if some third party had made a Java library for doing OLE/COM automation. I Bing’d it and found this Stack Overflow article:
http://stackoverflow.com/questions/6679810/is-there-ole-automation-in-java
So it looks like are a couple choices – JACOB, which it sounds like may not be actively maintained, and JNA, which may be better maintained.
This is not something we’ve tested or could say that we support, but it is a possibility."
Re: Calling JMP from Java with OLE automationDo you have more information about use case?
We’d rather JMP do the calling instead of being called. We’re not built as a compute engine.
Calling SAS from Java is quite doable and well supported. That may be a better fit for them depending on the use case.
Jeff Perkinson
JMP Customer Care Manager
SAS Institute Inc.
SAS Campus Drive • Cary, North Carolina 27513 • USA
Ph: 919-531-6521
E-mail: Jeff.Perkinson@jmp.com
Share, Ask, Learn, Connect - community.jmp.com<>
Re: Calling JMP from Java with OLE automationHi Jerry --
Matt Flynn wrote a white paper a few years ago on "Automating JMP Via Scripting tools and MS Windows COM" -- one of the technologies he talks about is Tcl or Tool Command Language.
White paper is here: http://www.nesug.org/Proceedings/nesug09/ap/ap09.pdf
I also see that there is some effort for a Tcl/Java Project.
So I'm not sure if that is what the customer is going for but there is some syntax and examples in there that might be useful.
Dan