Communicating w. running (non-Java) process from Java
I'd like to be able write a Java program that can run an instance of a text editor, say NotePad or TextPad, with some text file open (I know how to do this via the Runtime class' exec method), but then, at a later point, open some other text file in that same running instance of the text editor. This is on Windows XP btw... with Java 1.4.x
Can this be done? Specifically can it be done in the case of NotePad or TextPad?
If this can be done, and someone can give me some pointers on how it's done, I'd greatly appreciate it... Thanks in advance.
You will have to make use of native methods for that. Or use something with Runtime.exec();
Similar Messages
-
No able run a GP Process from Portal
Hi All,
I am not able to run a GP Process from the portal.
I have created a Guided Procedure with multiple steps.
I am able to access a couple step. But in the third step the complete functionality is not working.
If I run a process with out portal, Every step works well.
Please help me in solving this.
For integrating in portal, I ve used AInstantiation iview with URL Parameter from the process.
Thanks in Advance,
AnishHi Anish,
If your third step is an iView, a VC Callable Object or another "non java technology" UI, this only means that you need to open the process within the portal to be able to use the so-called "Portal Navigation".
The AInstantiation WD App only exists for testing purposes (from the Design Time) and is not meant to be reused.
I would rather recommend you to implement your own application for starting GP Process either by using the Public API or the Web Service
See also how to start a GP process from a url within EP?, your problem should be solved
Hope this helps,
Best regards,
David -
How to run non-customised report from command prompt to gen trace file?
Hi
how to run non-customised report from command prompt to gen trace file?
EBS R12 RUP6.
RHEL5
rgrdsHi,
See (Note: 285497.1 - Rwrun.sh Does Not Generate Trace Output Using TRACEOPTS in Command Line) and/or (Note: 737445.1 - R12 Concurrent Requests Run Forever; rwrun Errors REP-50125) for the command you need to use.
Thanks,
Hussein -
Getting while running the BPEL process from java
Hi All,
We are using the following java code to run the BPM process.
package callBPMProcess;
import java.util.Hashtable;
import java.util.UUID;
import java.util.List;
import javax.naming.Context;
import oracle.soa.management.facade.Locator;
import oracle.soa.management.facade.LocatorFactory;
import oracle.soa.management.facade.Composite;
import oracle.soa.management.facade.Service;
import oracle.soa.management.facade.CompositeInstance;
import oracle.soa.management.facade.ComponentInstance;
import oracle.fabric.common.NormalizedMessage;
import oracle.fabric.common.NormalizedMessageImpl;
import oracle.soa.management.util.CompositeInstanceFilter;
import oracle.soa.management.util.ComponentInstanceFilter;
import java.util.Map;
import javax.xml.transform.*;
import javax.xml.transform.dom.*;
import javax.xml.transform.stream.*;
import org.w3c.dom.Element;
import java.io.*;
public class StartProcess {
public StartProcess() {
super();
Hashtable jndiProps = new Hashtable();
jndiProps.put(Context.PROVIDER_URL, "http://ytytry.4234434.com:7001/soa-infra");
jndiProps.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");
jndiProps.put(Context.SECURITY_PRINCIPAL, "weblogic");
jndiProps.put(Context.SECURITY_CREDENTIALS, "funnyj0ke");
jndiProps.put("dedicated.connection", "true");
String inputPayload =
"<process xmlns=\"http://xmlns.oracle.com/HelloWorld/Helloworld/BPELProcess1\">\n" +
" <input>hello</input>\n" +
"</process>\n" ;
Locator locator = null;
try {
// connect to the soa server
locator = LocatorFactory.createLocator(jndiProps);
String compositeDN = "default/Helloworld!1.0";
// find composite
Composite composite = locator.lookupComposite("default/Helloworld!1.0");
System.out.println("Got Composite : "+ composite.toString());
// find exposed service of the composite
Service service = composite.getService("bpelprocess1_client_ep2");
System.out.println("Got serviceName : "+ service.toString());
// make the input request and add this to a operation of the service
NormalizedMessage input = new NormalizedMessageImpl();
String uuid = "uuid:" + UUID.randomUUID();
input.addProperty(NormalizedMessage.PROPERTY_CONVERSATION_ID,uuid);
// payload is the partname of the process operation
input.getPayload().put("payload",inputPayload);
// process is the operation of the employee service
NormalizedMessage res = null;
try {
res = service.request("process", input);
} catch(Exception e) {
e.printStackTrace();
Map payload = res.getPayload();
Element element = (Element)payload.get("payload");
TransformerFactory tFactory = TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer();
transformer.setOutputProperty("indent", "yes");
StringWriter sw = new StringWriter();
StreamResult result = new StreamResult(sw);
DOMSource source = new DOMSource(element);
transformer.transform(source, result);
System.out.println("Result\n"+sw.toString());
System.out.println("instances");
CompositeInstanceFilter filter = new CompositeInstanceFilter();
filter.setMinCreationDate(new java.util.Date((System.currentTimeMillis() - 2000000)));
// get composite instances by filter ..
List<CompositeInstance> obInstances = composite.getInstances(filter);
// for each of the returned composite instances..
for (CompositeInstance instance : obInstances) {
System.out.println(" DN: " + instance.getCompositeDN() +
" Instance: " + instance.getId() +
" creation-date: " + instance.getCreationDate() +
" state (" + instance.getState() + "): " + getStateAsString(instance.getState())
// setup a component filter
ComponentInstanceFilter cInstanceFilter = new ComponentInstanceFilter();
// get child component instances ..
List<ComponentInstance> childComponentInstances = instance.getChildComponentInstances(cInstanceFilter);
// for each child component instance (e.g. a bpel process)
for (ComponentInstance cInstance : childComponentInstances) {
System.out.println(" -> componentinstance: " + cInstance.getComponentName() +
" type: " + cInstance.getServiceEngine().getEngineType() +
" state: " +getStateAsString(cInstance.getState())
System.out.println("State: "+cInstance.getNormalizedStateAsString() );
} catch (Exception e) {
e.printStackTrace();
private String getStateAsString(int state)
// note that this is dependent on wheter the composite state is captured or not
if (state == CompositeInstance.STATE_COMPLETED_SUCCESSFULLY)
return ("success");
else if (state == CompositeInstance.STATE_FAULTED)
return ("faulted");
else if (state == CompositeInstance.STATE_RECOVERY_REQUIRED)
return ("recovery required");
else if (state == CompositeInstance.STATE_RUNNING)
return ("running");
else if (state == CompositeInstance.STATE_STALE)
return ("stale");
else
return ("unknown");
public static void main(String[] args) {
StartProcess startUnitProcess = new StartProcess();
But we getting the fallowing error.Can some body help out us.
SEVERE: Failed to create a DirectConnectionFactory instance (oracle.soa.api.JNDIDirectConnectionFactory): oracle.soa.api.JNDIDirectConnectionFactory
javax.naming.NoInitialContextException: Cannot instantiate class: weblogic.jndi.WLInitialContextFactory [Root exception is java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory]
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:657)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
at javax.naming.InitialContext.init(InitialContext.java:223)
at javax.naming.InitialContext.<init>(InitialContext.java:197)
at oracle.soa.management.internal.ejb.EJBLocatorImpl.<init>(EJBLocatorImpl.java:166)
at oracle.soa.management.facade.LocatorFactory.createLocator(LocatorFactory.java:35)
at callBPMProcess.StartProcess.<init>(StartProcess.java:53)
at callBPMProcess.StartProcess.main(StartProcess.java:152)
Caused by: java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at com.sun.naming.internal.VersionHelper12.loadClass(VersionHelper12.java:46)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:654)
... 7 more
Process exited with exit code 0.
Thanks in advanced,
Narasimha.
Edited by: parker on Mar 27, 2011 11:55 PMLooks like you don't have WebLogic classes on the classpath:
javax.naming.NoInitialContextException: Cannot instantiate class: weblogic.jndi.WLInitialContextFactory [Root exception is java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory]
Other options for creating an instance are to use a web service call or one of the other adapters (e.g. JMS). If you need to directly start a process you might also look at this blog from the ATeam:
http://redstack.wordpress.com/worklist/
The specific example for getting the tasks is at: http://redstack.wordpress.com/2011/03/09/implementing-task-initiation/
Then the real work of creating an instance from the initiator tasks is at: http://redstack.wordpress.com/2011/03/09/creating-the-domain-layer-for-the-worklist/ -
Checking running non java process
Hey,
i need to write a program that checks if a non-java process is still running (under windows) and to run a system command if it is not. Is there a way to check what process are still running?
ThanksYou will have to make use of native methods for that. Or use something with Runtime.exec();
-
Java application running non-Java programs
Greetings,
I'd like to have an application start up another non-Java application. How do I do this? For example, how would I execute the following commands from a java application?
Unix: "ls > /tmp/ls.dat"
NT: "dir > c:\temp\dir.dat"
TIA,
--Paul GalvinYou can use Runtime.exec. You'll have to do the redirection manually, by getting the Process from the exec method, opening the output stream, and writing the results to the file you want to redirect the output to. See the many posts on Runtime.exec in this and other forums.
-
Is it possible to run a non-java program(i.e program off desktop ) into a JFrame. Meaning that this program will only run in the specified JFrame.
aggie09 wrote:
Is it possible to run a non-java program(i.e program off desktop ) into a JFrame. Meaning that this program will only run in the specified JFrame.Don't create more than one thread for the same problem/question please. Since your previous post holds a bit more information about it, please continue there:
[http://forums.sun.com/thread.jspa?threadID=5378613] -
Run non-Java program inside a JFrame
A quick question, would it be possible to run a non-java application inside a JFrame? By this, I mean restrict the program to be running only inside that frame.
You could do some of what you need using the JAWT api:
http://download.java.net/jdk6/docs/technotes/guides/awt/AWT_Native_Interface.html
Thanks,
Dmitri
Java2D Team -
How do I run a full process from SSIS ???
Hi all
I run BPC 5.1 SP3, and I need to automate a series of jobs, but the system is giving me problems and I hope someone can help out.
I need to automate a full optimize and then a full process of our AppSets.
I know that in SP3, the Appsets are taken offline for the full optimize and are then left offline, so in-between I run the "SystemAvailableTask" to set the Appsets back online.
Additionally, all dependencies are removed from the FACT table for the optimized AppSets, which are only rebuilt by performing the full process afterwards.
Anyway, the problem I have is that the optimize is running quite happily from SSIS, as is the SystemAvailableTask.
Up to this point in the job, everything works as intended, so I now have a fully optimized Appset, which is available for users to access.
However, the Full Process job then fails.
I have run the Full Process as a standalone job from SSIS and it takes 2m36s to run, but fails to rebuild any dependencies.
When I ran it from the SAP Admin program, it took 9m57s to run and rebuilt everything correctly.
I am currently only offered 1 option in the SSIS package, which is to run a Full or an Incremental process, so I select Full.
However, on the right-hand side, there are various other options available (such as bApplicationProcess, PROCESSMODE (set to "3"), PROCESSOPTION (set to "1"))
Should I be changing any of the settings on the right to make the job run properly, or should I be doing it differently.
Obviously, I need to make this work from SSIS, as I can't schedule a full process any other way, so I would be extremely grateful for any help that you can offer.
Thanks
Craig
Edited by: Craig Aucott on Aug 25, 2009 10:21 AMThe easiest way to do this is to write a Tuxedo server (i.e., using only
ATMI and no CORBA stuff) that does the following:
1.) In tpsvrinit(), the last thing that it should do is a tpacall to the
service contained in this server (and nowhere else) with the TPNOREPLY
flag.
2.) In the method that implements the service, do your database work, sleep
for a little while, do another tpacall to itself with the TPNOREPLY flag,
and return.
Hope this helps,
Robert
Ram Ramesh wrote:
Hello folks:
How can I run a background process that runs under WLE's control.
What I am looking for is a way to have a process that runs in an
infinite loop and polls the database to see if there is any background
work that needs to be done. But I still want the process to be managed
by WLE for fault tolerance.
Thanks,
Ram Ramesh
[email protected] -
Running a linux process from java
hi,
Process child = Runtime.getRuntime().exec("top -n 1 | grep Cpu");
// hook up child process output to parent
InputStream lsOut = child.getInputStream();
InputStreamReader r = new InputStreamReader(lsOut);
BufferedReader in = new BufferedReader(r);
line = in.readLine();If i run the command (top -n 1 | grep Cpu) on linux box it gives a line output. When i run the above prog( which also runs the same command) on the same linux machine the line is always read as null.
not sure where i m doing mistake. Please help.
--ravi[email protected] wrote:
it still doesnt work. I also tried the below way still no luck
Process child = Runtime.getRuntime().exec(new String[]{"bash","-c","top -n 1","| grep Cpu"});Compare this with the code you've been given above. It's NOT the same.
Also: Why not leave the "grep" out and manually filter the input you get in your program? Then you don't need to worry about the shell and a simply "grep" is easily implemented in Java. -
How to calculate the total running time for process from sysssislog entries
Hi All,
I have the below query which gets me the log entries form the logs table when the process started/completed.
Select row_number() over (order by starttime) row_num,Substring( Substring(message, CharIndex('''',message) +1 ,Len(message)) ,0, CharIndex('''',Substring(message, CharIndex('''',message) +1 ,Len(message)))) as Description,
starttime,endtime,message
from dbo.sysssislog
where (message like 'start%' or message like 'finish%' ) and
LEFT(Substring( Substring(message, CharIndex('''',message) +1 ,Len(message)) ,0, CharIndex('''',Substring(message, CharIndex('''',message) +1 ,Len(message)))),1) between 'A' and 'Z'
order by starttime
However,I have to build a report on the top of it showing how much time that attribute/dimension/heirarchy took to execute(Ex-How much time did YearlyReview dimension take to complete).I dont have much knowledge of T-SQL and unable to figure out how to calculate
that on SQL or report level.
Could someone please assist me in getting the exact query for that?
Thanks a lot.I get the below output(sample 20 rows) on executing this query.Also,a start process does not necessarily follow up a finished message for the same dimension as it may have been stopped or it failed.So we need to leave it as NA in case it started but dint
finish
Row_Num Description starttime endtime Message
1 PAC SC Super Type 12/13/12 16:38 12/13/12 16:38 Started processing the 'PAC SC Super Type' dimension.
2 PAC SC Super Type 12/13/12 16:38 12/13/12 16:38 Started processing the 'PAC SC Super Type' dimension.
3 Team Member Indicator 12/13/12 16:38 12/13/12 16:38 Started processing the 'Team Member Indicator' dimension.
4 Team Member Indicator 12/13/12 16:38 12/13/12 16:38 Started processing the 'Team Member Indicator' dimension.
5 PAC SC Super Type 12/13/12 16:38 12/13/12 16:38 Started reading data for the 'PAC SC Super Type' attribute.
6 PAC SC Super Type 12/13/12 16:38 12/13/12 16:38 Started reading data for the 'PAC SC Super Type' attribute.
7 Specialist Merger Indicator 12/13/12 16:38 12/13/12 16:38 Started reading data for the 'Specialist Merger Indicator' attribute.
8 Specialist Merger Indicator 12/13/12 16:38 12/13/12 16:38 Started reading data for the 'Specialist Merger Indicator' attribute.
9 YearlyReview 12/13/12 16:38 12/13/12 16:38 Started processing the 'YearlyReview' dimension.
10 YearlyReview 12/13/12 16:38 12/13/12 16:38 Started processing the 'YearlyReview' dimension.
11 PAC SC Repeat Caller 12/13/12 16:38 12/13/12 16:38 Started processing the 'PAC SC Repeat Caller' dimension.
12 PAC SC Repeat Caller 12/13/12 16:38 12/13/12 16:38 Started processing the 'PAC SC Repeat Caller' dimension.
13 Year 12/13/12 16:38 12/13/12 16:38 Started reading data for the 'Year' attribute.
14 Year 12/13/12 16:38 12/13/12 16:38 Started reading data for the 'Year' attribute.
15 Staffing Function 12/13/12 16:38 12/13/12 16:38 Started processing the 'Staffing Function' dimension.
16 Staffing Function 12/13/12 16:38 12/13/12 16:38 Started processing the 'Staffing Function' dimension.
17 PAC SC Repeat Caller 12/13/12 16:38 12/13/12 16:38 Started reading data for the 'PAC SC Repeat Caller' attribute.
18 PAC SC Repeat Caller 12/13/12 16:38 12/13/12 16:38 Started reading data for the 'PAC SC Repeat Caller' attribute.
19 PAC HV Cust 12/13/12 16:38 12/13/12 16:38 Started processing the 'PAC HV Cust' dimension.
20 PAC HV Cust 12/13/12 16:38 12/13/12 16:38 Started processing the 'PAC HV Cust' dimension. -
Running a batch process from startup acrobat script
Hi All,
Need to start batch process sequence while acrobat is launched.
Can anyone pls guide how to do this in startup javascript.
thanks in advancecan you pls explain how to open batch execute from startup
-
How to call BPM process from Java
Hi All,
Can anybody help how to call a BPMN process from java.Please give any sample exaple on this.
Thanks,
GaneshFor 11g BPM please look at this post. Re: Getting while running the BPEL process from java
It references an ATeam example app that can start processes from a web client. But the Java APIs are described too. -
How to run GP process from ABAP Workflow
Hi All,
Can anybody tell me in detauls how can I run a GP process from ABAP workflow. What configuration are required for that in J2EE engine side as well as ABAP side.
Thanks
ChandanHi Chandan,
see <a href="http://help.sap.com/saphelp_nw04s/helpdata/en/b1/259142d4d4b81ce10000000a1550b0/frameset.htm">here</a>, maybe this help.
Ciao
Luca -
Unique Index Error while running the ETL process
Hi,
I have Installed Oracle BI Applications 7.9.4 and Informatica PowerCenter 7.1.4. I have done all the configuration steps as specified in the Oracle BI Applications Installation and Configuration Guide. While running the ETL process from DAC for Execution Plan 'Human Resources Oracle 11.5.10' some tasks going to status Failed.
When I checked the log files for these tasks, I found the following error
ANOMALY INFO::: Error while executing : CREATE INDEX:W_PAYROLL_F_ASSG_TMP:W_PRL_F_ASG_TMP_U1
MESSAGE:::java.lang.Exception: Error while execution : CREATE UNIQUE INDEX
W_PRL_F_ASG_TMP_U1
ON
W_PAYROLL_F_ASSG_TMP
INTEGRATION_ID ASC
,DATASOURCE_NUM_ID ASC
,EFFECTIVE_FROM_DT ASC
NOLOGGING PARALLEL
with error java.sql.SQLException: ORA-12801: error signaled in parallel query server P000
ORA-01452: cannot CREATE UNIQUE INDEX; duplicate keys found
EXCEPTION CLASS::: java.lang.Exception
I found some duplicate rows in the table W_PAYROLL_F_ASSG_TMP with the combination of the columns on which it is trying to create INDEX. Can anyone give me information for the following.
1. Why it is trying to create the unique index on the combination of columns which may not be unique.
2. Is it a problem with the data in the source database (means becoz of duplicate rows in the source system).
How we need to fix this error. Do we need to delete the duplicate rows from the table in the data warehouse manually and re-run the ETL process or is there any other way to fix the problem.This query will identify the duplicate in the Warehouse table preventing the Index from being built:
select count(*), integration_id, src_eff_from_dt from w_employee_ds group by integration_id, src_eff_from_dt having count(*)>1;
To get the ETL to finish issue this delete to the W_EMPLOYEE_DS table:
delete from w_employee_ds where integration_id = '2' and src_eff_from_dt ='04-JAN-91';
To fix it so this does not happen again on another load you need to find the record in the Vision DB, it is in the PER_ALL_PEOPLE_F table. I have a Vision source and this worked:
select rowid, person_id , LAST_NAME FROM PER_ALL_PEOPLE_F
where EFFECTIVE_START_DATE = '04-JAN-91';
ROWID PERSON_ID
LAST_NAME
AAAWXJAAMAAAwl/AAL 6272
Kang
AAAWXJAAMAAAwmAAAI 6272
Kang
AAAWXJAAMAAAwmAAA4 6307
Lee
delete from PER_ALL_PEOPLE_F
where ROWID = 'AAAWXJAAMAAAwl/AAL';
Maybe you are looking for
-
Opinions of iSkysoft iMedia Converter for Mac?
Looking for a solid, versatile movie converter app that I can use with iMovie. I have use several "free" apps, with varying degrees of satisfaction. iSkysoft iMedia Converter for Mac SEEMS to be very good, but I'm not finding a lot reviews of the Mac
-
Bug Report: Page # and Icon Lost After Rename
I love the new file management features in version 10.3 but I noticed some problems right away. After renaming a document, the current page position is lost and the document opens at page 1. This first one I renamed was a 400-page book and this was
-
Hi, I am rebuilding an existing Labview application (originally done in LV8.6) using LabVIEW 2011. The application works in LV2011 as stand alone but when I try to build the installer, I get the error for which the details are in the attached text fi
-
F9N1 - Inbound FINSTA not getting generated
Hi, When I execute F9N1, internal FINSTA are not getting generated.. The application log shows current Accounts being edited by end of day processing run What could be wrong and what can be done? Any idea.. The next date in F9K3- Current Account is
-
Trigger only one process task on Process form update
Hello, I'd like to trigger a single process task (a single time) when one or several attributes are updated in a process form. any idea how to do that? what I don't want to do :) - call the same process task on "firstname update" AND on "lastname upd