Launching external applications from web start
Hi!
I am currently working on a management system and I need to launch other management systems from my Java Web Start application. The other systems are either based on web applications (URLs), telnet - needs to set up a telnet session, or running shell scripts or batch files.
URLs are ok. I am using Desktop.browse in Java 1.6 or I can use BasicService.showDocument in javax.jnlp API.
My application may run on both windows and linux (ie its launched from the browser). It interacts with a java app on a linux server over RMI.
How can I lauch a telnet session from my client app?
Do I have to include apache commons.net and create a telnet module in my app or can i lauch c:\windows\system32\telnet.exe in windows (if my app is lauched on win) and /usr/kerberos/bin/telnet (if my app is lauched in Linux)?
How can I launch an external .exe application in window and how can I launch any shell script or program in Linux?
(same as how do i lauch telnet)
As long as the user is prompted I can see no risk of denying these kind of things so I hope and think that this should be possible!
PS. I have managed to do it by using Runtime.exec() when running as a non JWS application, but I cannot do it when running as JWS:
java.security.AccessControlException: access denied (java.io.FilePermission <<ALL FILES>> execute)I dont want to sign the application either. The reason for choosing webstart was to not have to renew certificates at our customers.
Please help.
Thanks for taking interest and reading this.. and I hope that someone has some helpful answers for me :)
Edited by: Tomas_Andersen on Feb 5, 2008 6:34 AM
Do you know how to launch Java applications (not applets) from web pages ? Thank you.
you can setoff a java servlet from a webpage.Is that what you are talking about ??? activeateing a server side app ????
Similar Messages
-
Can you Launch External Applications From Within InDesign Ebook?
Hi all,
I was wondering if it is possible to open an external application from within an ebook (created with InDesign) e.g. click on a link and have an external ssh client open up for instance?
Thanks in advance for any advice.
Regards,
RGIt's possible to include hyperlinks in an InDesign file and export them in an EPUB file. Since I'm not familiar with working with SSH clients (in fact, I just had to Google it to have a clue what you're talking about), is this something that can be invoked in a standard URL format? If so, you could probably include it.
The next issue is whether the link would work. The link couldn't be used directly in any eBook reader I know of, but at least the iBook on an iPad or iPhone would switch to to Safari to let you follow a URL to its destination. But I don't think that's possible on most eBooks. -
Call an External Application from Web UI overview
Hi Gurus,
I am stuck with a situation here,
Scenario is i have to create a button in overview page, such that when we click on it we need to call a external application.
external application can be anything (URL).
can anybody give a solution.
thanx in advance.The process for launching the external URLs should be same as Web Dynpro Transactions. But in this case while defining the URLs in the transaction launcher , you have to select the option for Non BSP URLs & defiine a MAPPED Logsys( In your case the could be any system in which the application exists). Also the URL for Web Dynpro applicatons is sap/bc/webdynpro/sap/Web_Dynpro_Component_Name and is recognized by the target system. In your case you have to build a URL which should be recognized by your target system.
This is how I have launched a ABAP webdynpro transaction. I guess if the URL is correct you can launch other external transactions.
Regards
Kavindra -
Launching Java applications from web pages
Hi there,
Do you know how to launch Java applications (not applets) from web pages ? Thank you.
Berk Can CelebisoyDo you know how to launch Java applications (not applets) from web pages ? Thank you.
you can setoff a java servlet from a webpage.Is that what you are talking about ??? activeateing a server side app ???? -
Execute external application from Web UI
Hello,
I have some problems executing an EXE file program with some command line options from the CRM 7.0 Web UI. What I have tried is adding a new navigation button. When I press this button a BSP component is launched. This new BSP component can be used for getting the required data and starting the external program.
However I have not found any working ABAP function to start the program. The old GUI_FRONTEND services return GUI not supported and I haven't found a replacement. Now I have found an alternative by using javascript.
This actually starts the application, however I fear this isn't a safe solution. If someone changes the security of the internet browser this might no longer work. Additionally it didn't work in FireFox either, only internet explorer.
Secondly the system navigates to a black page, I want to forcefully set it back to the previous page. So I made a serverEvent, but it is not throw when logged in the client, but it does work when I directly execute the BSP component. Is there any event after a page is finished loading?
Any ideas, pointers?
Edited by: Arjan Boer on Aug 12, 2010 12:05 AMHi Arjan,
I had read something that might help you earlier this month. Have a look at step 7.4 [here|http://wiki.sdn.sap.com/wiki/display/CRM/CRMWebUI-LaunchingtransactionsinGUIforWindows].
Put short:
If your application is based on files or is associated with a certain file type extension (like Word with .doc and Excel with .xls) you can simply create an empty file and upload it to the server. Then register the MIME type in your windows registry with the program, if not done during install. Afterwards you can simply put the mimetype in the responses HEADER field and serve up the empty file you created before.
I have a solution alike running with MS Visio, with the small difference that I do have a file that is already filled with data and I want to save it back to the server. Works great through WebDAV.
cheers Carsten -
Very Urgent Unable to Launch Application using Web Start using JDK 1.4.2
Hi all
I am very serious issue i have ejb client swing application that uses
RMI to contact a session bean deployed in JBoss now i want the client app to be installed in the client machine using web start . Also i understand i require security permission to access network resources. so i have signed all the JAR files with same certificate created using self certificate avialiable in JDK by default also in the JNLP file in have included the following tag
<security>
<all-permissions/>
</security>
Now when I launch my application using Web start it gives an error that " Unsigned application is trying to access local resources"
I unable to understand what could be the problem . Please help me with the steps to be followed where in client should be able to RMI call to the server
Thanks in Advance
NaveenYou may have tried this already, but you might have to sign the jars via command line, outside any export process from your IDE.
$ jarsigner {filename}.jar {key from keystore}
I also had problems using webstart and RMI through an RCP
Ben -
Capturing audio using jmf from web start
Hi everybody,
Currently im working on a project related with audio capturing in client side. Clients will access the application from web start. jmf will be used to capture audio. Additionally, i dont want users to install jmf.
At first, for testing purposes i wrote a small and simple program that only captures audio and plays it again. It works fine as a standalone application. However, it did not work if i deploy the same program on the web start, doing all required configurations carefully for web start deployment.
I found the problem is that required capture devices could not be detected when the program is run from web start.
I searched forums and internet and made some trials to solve and idendify the problem. i want to share you the results:
At first , i installed jmf to my machine, some jars (jmf.jar, sound.jar,...) and a jmf.properties file are extracted to a directory in my machine. Then, after copying jmf.jar and jmf.properties file to some folder, i uninstalled jmf. Then i created a simple project for testing purposes that captures audio and plays it back.i created this project from eclipse IDE and and set its classbath to the folder which contains only jmf.jar and jmf.properties. It runs successfully. However, if i remove jmf.properties from this file, project does not run, no device can be found. I strongly think, this means that, this jmf.properties file is necessary to detect any audio capture device and hence to run any jmf program that captures auido.
If i deployed the same project from web start, it did not work as i mentioned, since no audio device can be found because of the lack of jmf.properties file. However, if i install jmf again, since the jmf.properties is created, the project runs from web start too. The interesting thing is that, if i uninstall jmf
but only create the directory that only contains jmf.properties again, project still runs from web start. If i remove this file from that directory projects does not run again.
It seems that, this jmf.properties file is impornt for detecting audio capturer devices. It is created in the phase of jmf installation by jmfregistry or jmfinit and is unique for the machine.
Finally, i conclude that in order to run any project that captures auido from web start without installing jmf, a jmf.properties file should be created for each client machine automatically (in a silent way) before execution which means that jmfregistry or jmfinit should be run silently before execution to create this jmf.properties. Is there anybody that knows antying to achieve this ?
Any suggestions about the topic rather than the answer to the specific question above will also be appreciated greatly. Thanks a lot in advance.Hi
I am working on a similar requirement. Please let me know if you have a solution.
Thanks in advance. -
Error in registering a provider for External Application for Web Clipping
Getting Error: The provider URL specified may be wrong or the provider is not running. (WWC-43176)
when trying to register a provider for an external application for Web ClippingHi Vineet,
The admins applied a patch to my version of the OracleAS 10g Version 9.0.4. and now I able to register a provider with the same URL but different Provider Name. I added My Yahoo Web Clipping from the Portlet Staging Area. That works fine but when I click on the check mail link in the Web Clipping Studio it gives me the following error. I have tried several times and I get the same error....
An exception has occured : WCS-514 -- Get status code 403 to URL http://us.rd.yahoo.com/my/prop/mail/*http://mail.yahoo.com/ by method get
Please click "Cancel" or "Back" in the above panel (if present) to retry. Otherwise, please try to click "Back" (from the browser) to go back to the Oracle Portal page to restart. -
Reader 9.3.3 (Vista) : problem to launch external application
Hello!
I have a file which have links to start external application.
In Adobe Reader 9.3.3 (Windows Vista), I have that dialog box (in french, sorry) :
How can I activate launching external applications?
Thank you for your help.
FrançoisThis is a security issue. Try looking at the Preferences under the Trust Manager.
-
Launching external link from E-Business suite
Hi,
I have a requirement to launch an external application from Oracle Application.
I have a responsibility say 'Launch External App Responsibility' .
When i click on that, it should launch my application (assume i have the URL of my external Application)
Any help will be appreciated.
Thanks in advance.Hi,
Hi,
Please see these links/threads.
Note: 332500.1 - How To Call An HTML Webpage From 11i Navigator Menu
Note: 883404.1 - How To Access External Url When Using SSWA PLSQL Function
Registering my website to e-Business Suite Apps
Re: Registering my website to e-Business Suite Apps
Thanks,
Hussein -
Re: How do I keep an application from being started morethan once?
Here are some quick ideas. None of them should be too hard to implement,
although each has some drawbacks.
1. Have a login server track who is logged on, and if there is already a
logon for a given user or a given machine, then deny the application
startup. The nice thing about this is that a user will not be able to have
multiple logins even by going to another machine. Then again, this may not
be so nice, and you also get a possible single point of failure on the
login server for which you will have to prepare.
2. Drop to the operating system, and get a list of processes for the client
machine. If the name of one of them matches the name of application that
is being run, then deny startup. This avoids a network hit, but requires
some OS specific code. Also, a clever user could change the name of an
executable to get around this. Note that a user could have another login
on another machine.
3. Write to a file on the local machine. You can hide the file in some
suitable place, and can also scramble some information so that a user
cannot get around having this file present by reading from the file at
startup and then writing to it. Based on the state of your application,
the file will have some scrambled information indicating if an instance of
an application can be started. If you retain the write lock (i.e. do not
close) the file for the duration of the application, you increase your
security at the risk of a confused user if the application gets terminated
without releasing the lock. Depending on the OS where the client will run,
this could be an issue. If you like this option, perform some experiments
first on all configurations of an example client machine to determine the
behavior. Again, this only works to prevent an extra login on a single
machine, not system wide.
If you are not concerned about your users hacking around too much and don't
care about a login on another machine, I would opt for some version of
number 3. Otherwise, I would venture number 1.
Regards
CSB
At 07:47 AM 2/18/98 -0500, Martin G Nystrom wrote:
A user can launch an application, then launch it again. How do we make it so
that the user can only run one instance of the application?
Martin Nystrom
Eli Lilly and Company
([email protected])
Curtis Bragdon, Senior Consultant, Forte Software
[email protected]
Voice Mail: (510) 986-3807
Paging: (888) 687-6723
"I've seen dozens of triggering towns." - Richard HugoYet another quick and dirty solution is to use local ExternalConnections.
This is a single instance per machine solution.
Example is attached.
(See attached file: TestOne.pex)
[email protected] on 02/18/98 10:01:07 PM
Please respond to [email protected]
To: [email protected]
cc: [email protected]
Subject: Re: How do I keep an application from being started more than
once?
Martin,
there are two ways to read your question
(a) no more than one instance of an application per machine
(b) no more than one instance of an application per "user"
now if a user has only one machine, and your system has "userids" and you
only want
one active "session" per "user" then the distinction is irrelevant.
However, many systems
let people share logins, so a token based thing enforcing one login will be
problematic.
The downside of #1 approach suggested by Curtis happens when a machine gets
hosed without "logging" the user off the security system, then they can't
get in until their ticket expires or a sysadmin gets involved. Should be
manageable, however. But this enforces one application
instance per user, unless you check both for the presence of an active
token for that user as well as the presence of a token tied to that
particular node name. Otherwise there is nothing to prevent the same user
from launching the app again and logging in as a different user. This is
definitely the best approach of the bunch, and can be adapted for either
(a) or (b).
Suggestion # 2 won't work unless the application is built as a compiled
client,
since the process name will be 'ftexec' and not the "name" of the
application. And it doesn't
prevent a user from launching the app from a different machine (or people
sharing logins). So again it depends on what you are trying to achieve.
#3 also only prevents multiple instances per machine, not necessarily by
user. Of course
most people don't have multiple machines. The point is that you may be
trying to
prevent your users from sharing logins. In which case the file thing won't
do it.
Some other ideas:
1. You could, however, enforce one application per machine using the
installed partition agent's ExecutingPartition instrument name. As long as
the user doesn't run the app in a different environment, you can have the
app check at startup time if there is another
ActivePartition running under the same InstalledPartition name.
(ActivePartitions are child agents
of InstalledPartitions).
2. use the ObjectLocationManager and bind a simple object into the naming
system using a naming scheme such as
/MyApplication/MyNode or
/MyApplication/MyUserId
the presence of either one would indicate that another instance of that
application is running on either that machine or that user. Of course
these have to be cleaned out, and subject to similar downside as
alternative #1. So you'd essentially be using the forte naming system as a
distributed lock manager (ouch).
3. Have the application remove the shortcut to launch it upon startup, and
recreate it when it is finished, or move it to a hidden place. There it
is - the worst idea I've ever come up with. Don't
do this!
Regards,
John
From: Curtis Bragdon <[email protected]>
Date: Wed, 18 Feb 1998 16:36:58 -0500
Subject: Re: How do I keep an application from being started more than
once?
Here are some quick ideas. None of them should be too hard to implement,
although each has some drawbacks.
1. Have a login server track who is logged on, and if there is already a
logon for a given user or a given machine, then deny the application
startup. The nice thing about this is that a user will not be able to have
multiple logins even by going to another machine. Then again, this may not
be so nice, and you also get a possible single point of failure on the
login server for which you will have to prepare.
2. Drop to the operating system, and get a list of processes for the client
machine. If the name of one of them matches the name of application that
is being run, then deny startup. This avoids a network hit, but requires
some OS specific code. Also, a clever user could change the name of an
executable to get around this. Note that a user could have another login
on another machine.
3. Write to a file on the local machine. You can hide the file in some
suitable place, and can also scramble some information so that a user
cannot get around having this file present by reading from the file at
startup and then writing to it. Based on the state of your application,
the file will have some scrambled information indicating if an instance of
an application can be started. If you retain the write lock (i.e. do not
close) the file for the duration of the application, you increase your
security at the risk of a confused user if the application gets terminated
without releasing the lock. Depending on the OS where the client will run,
this could be an issue. If you like this option, perform some experiments
first on all configurations of an example client machine to determine the
behavior. Again, this only works to prevent an extra login on a single
machine, not system wide.
If you are not concerned about your users hacking around too much and don't
care about a login on another machine, I would opt for some version of
number 3. Otherwise, I would venture number 1.
Regards
CSB
At 07:47 AM 2/18/98 -0500, Martin G Nystrom wrote:
A user can launch an application, then launch it again. How do we make itso
that the user can only run one instance of the application?
Martin Nystrom
Eli Lilly and Company
([email protected])
Curtis Bragdon, Senior Consultant, Forte Software
[email protected]
Voice Mail: (510) 986-3807
Paging: (888) 687-6723
"I've seen dozens of triggering towns." - Richard Hugo
John Jamison
Vice President of Technology
Sage IT Partners, Inc.
415 392 7243 x 306
[email protected] -
Hello!
I need make following funcionality : from GUI application, opne new JFrame in another JVM.
I do it like ->
String mainClass = MainClass.class.getName();
String classPath = System.getProperty("java.class.path");
System.out.println(" classpath -> " + classPath ); // when run it from Web Start in output see : claspath -> C:\Program Files\Java\jre6\lib\deploy.jar
ProcessBuilder pb = new ProcessBuilder( "java", "-classpath", classPath, mainClass );
try {
taProcess = pb.start();
} catch (IOException e) {
e.printStackTrace();
}When I run it from my IDE - everything working fine. I can run something in other JVM.
But if I run it from Java Web Start, I get wrong classPath (web starts classPath)
Question is : How can I get my application class path, when I run it from Web start?? ( press on jnlp link)You code make use of manifest of the jar file to reload the classpath.
THanks,
Jyno -
Can't load Stylesheet while runing application on Web Start
I've got an error "WARNING: com.sun.javafx.css.StyleManager$2 run Resource "null" not found" while runing application on Web Start.
It works fine while running on local execution. I've already signed jar files. So, It shoud not have any problem with java security.
I kept css in the jar fie. The code below is used for loading css file.
String stylesheetName = "/theme/default.css";
scene.getStylesheets().add(stylesheetName);There was a guy who had the same problem with me but there was still no solution for this problem yet. Applet and css
Does anyone know how to fix it?Hello User,
Your path is wrong. It can't be good if your css file is inside your jar. (This is not a javaFx problem)
If you pacaked your application like that:
myapp.jar
-----theme
---------default.css
You should try something like this:
scene.getStylesheets().add(getClass().getClassLoader().getResource("/theme/default.css").toString());Niculaiu
Edited by: San Nicula on Jul 27, 2011 12:50 AM -
Can not launch swing application from Java Web Start 1.6.0_37
I have a dynamic generated jnlp file from a serlvet. When I used Java Web Start to start the swing application, it failed. The exception showed
com.sun.deploy.net.FailedDownloadException: Unable to load resource: http://xxxx.xx.com:9080/dilpipweb/Test-1.0-SNAPSHOT.jar
at com.sun.deploy.net.DownloadEngine.actionDownload(Unknown Source)
at com.sun.deploy.net.DownloadEngine.getCacheEntry(Unknown Source)
at com.sun.deploy.net.DownloadEngine.getCacheEntry(Unknown Source)
at com.sun.deploy.net.DownloadEngine.getResourceCacheEntry(Unknown Source)
at com.sun.deploy.net.DownloadEngine.getResourceCacheEntry(Unknown Source)
at com.sun.deploy.net.DownloadEngine.getResource(Unknown Source)
at com.sun.javaws.LaunchDownload$DownloadTask.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
I used janela to validate the generated jnlp file. It was valid. I also checked the tomcat access log, it showed that the Test-1.0-SNAPSHOT.jar file was accessed correctly (with a 200 return code).
Can anyone help me what was the problem?
Thanks,Hi.
I got a different problem. My Corba application works in JRE 1.6, but doesn't works in JRE 1.5.X. I got an unexpected error and my console shows:
getSubjectX500Principal NoSuchMethodError: java.lang NoSuchMethodError
#### Java Web Start Error:
#### null
Can you help me? -
Is it possible to open / Launch a client/Destop Application from Web UI ?
Hi All,
I am using SAP CRM 7.0 EHP 1. I need to launch a custom .NET application ( .exe file ) from desktop, say. How could I do that?.
1. I tried using the following code
data program type string.
data commandline type string.
program = 'C:\Windows\notepad.exe'
call method cl_gui_frontend_services=>execute
exporting
application = program
parameter = commandline.
Which work fine from SAP GUI not from Web UI. I try to call it (the above code) from Transaction Launcher BOR methed, also didn't work!, I dont know if it is a standard feature !!.
2. I I tried javascript ,, it works,, but we don't want to do it that way as it demands lowering security !!!.
Now, can you tell me if there is any alternatives ???..
Any help/hint highly appreciated,,
Thanks, Sudeep..In the report use the code
CALL METHOD cl_gui_frontend_services=>execute
EXPORTING
application = program
parameter = COMMANDLINE
maximized = 'X'
operation = 'OPEN'
create z transaction code and while creating transaction launcher put the Tcode in caps and try.
Rgds,
Shobhit
Maybe you are looking for
-
I installed a new 'used' Logic board, im my macbook 13.3 and it turned right on!..( i was out of warrenty) Apple logo and spiing wheel, then turns off.. After reading several forums, I went into self mode, did the 2 checks within in and got an error
-
New MacBook Pro gets stuck on blue start up screen
Hey all. I just got a new MacBook Pro in the past 2 weeks, it had been working fine, but last night I turned it on, it went to the bluish apple screen and did the loading thing, but wouldn't get past it. I let it do this for about 20 mins while I did
-
Updationg of ztables in module pool programming
I have to update ztables.... When I tried doing only last records is getting updated and not the entire ones... please help me PROCESS BEFORE OUTPUT. MODULE STATUS_0100. LOOP AT zasset. " into wa_zasset. module put_data. endloop. PROCESS AFTER IN
-
1434891 - Consolidation fails in BOFC 7.5 (new installation)
Hello, maybe someone can help me. There's a error in the consolidation of my Business Objects Financial Consolidation application: Failed to run database query:".. The SAP recommended solution (1434891 - Consolidation fails in BOFC 7.5 (new installat
-
Hi All, I want to add one filed to an existing segment .may i know what is the procedure ? than you sunny.