Help with Java function
Hi all,
I am suppose to write a java function for the following source and target structure:
<u>Source Structure</u>
Root A (0..unbounded)
|_ A
Root B (0..unbounded)
|_ B
Root C (0..unbounded)
|_ C
<u>Target Structure</u>
Root_target (0..unbounded)
|_ T
Based upon every occurrence of A, B and C, i have to first compare their values and for every unique value i have to create a separate instance of 'T'
i.e. if all the three A, B and C are different the output should be:
Root_target (0..unbounded)
|_ T (for A)
Root_target (0..unbounded)
|_ T (for B)
Root_target (0..unbounded)
|_ T (for C)
I am writing a java function in the graphical mapping for it, but i am stuck with the code to create target segments dynamically.
Any help in this regards is appreciated.
Regards,
Varun
Hi Varun,
I understood unique values form A,B,C need to map to T.
In this case change the context of all these A,B,C to their respective parent node.
write a user define function to accept these 3 queues , write a java logic to fiund uniqueness among all the records, add the resulkt to Resultset , which is output map to T.
Thanks,
venu.
Similar Messages
-
PI File adapter has a processing option u2018Empty-Message Handlingu2019 to ignore or Write Empty Files. In case there is no data created after mapping on target side then this option determines whether to write an empty file or not. But there is a catch to this option when it comes to using it with File Content Conversion which is described in SAP Note u2018821267u2019. It states following:
I configure the receiver channel with File content conversion mode and I set the 'Empty Message Handling' option to ignore. Input payload to the receiver channel is generated out of mapping and it does not have any record sets. However, this payload has a root element. Why does file receiver create empty output file with zero byte size in the target directory? Example of such a payload generated from mapping is as follows:
<?xml version="1.0" encoding="UTF-8"?>
<ns1:test xmlns:ns1="http://abcd.com/ab"></ns1:test>
solution :
If the message payload is empty (i.e., zero bytes in size), then File adapter's empty message handling feature does NOT write files into the target directory. On the other hand, if the payload is a valid XML document (as shown in example) that is generated from mapping with just a root element in it, the File Adapter does not treat it as an empty message and accordingly it writes to the target directory. To achieve your objective of not writing files (that have just a single root element) into the target directory, following could be done:
Using a Java or ABAP Mapping in order to restrict the creation of node itself during mapping. (This cannot be achieved via Message Mapping)
Using standard adapter modules to do content conversion first and then write file.
can someone help with java mapping that can be used in this case?Hi,
You have not mentioned the version of PI you are working in. In case you are working with PI 7.1 or above then here is the java mapping code you need to add after message mapping in the same interface mapping
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Map;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Document;
import com.sap.aii.mapping.api.AbstractTransformation;
import com.sap.aii.mapping.api.StreamTransformationException;
import com.sap.aii.mapping.api.TransformationInput;
import com.sap.aii.mapping.api.TransformationOutput;
public class RemoveRootNode extends AbstractTransformation{
public void execute(InputStream in, OutputStream out)
throws StreamTransformationException {
// TODO Auto-generated method stub
try
DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
DocumentBuilder builderel=factory.newDocumentBuilder();
/*input document in form of XML*/
Document docIn=builderel.parse(in);
/*document after parsing*/
Document docOut=builderel.newDocument();
TransformerFactory tf=TransformerFactory.newInstance();
Transformer transform=tf.newTransformer();
if(docIn.getDocumentElement().hasChildNodes())
docOut.appendChild(docOut.importNode(docIn.getDocumentElement(),true));
transform.transform(new DOMSource(docOut), new StreamResult(out));
else
out.write(null);
catch(Exception e)
public void setParameter(Map arg0) {
// TODO Auto-generated method stub
public static void main(String[] args) {
// TODO Auto-generated method stub
try{
RemoveRootNode genFormat=new RemoveRootNode();
FileInputStream in=new FileInputStream("C:\\apps\\sdn\\rootNode.xml");
FileOutputStream out=new FileOutputStream("C:\\apps\\sdn\\rootNode1.xml");
genFormat.execute(in,out);
catch(Exception e)
e.printStackTrace();
public void transform(TransformationInput arg0, TransformationOutput arg1)
throws StreamTransformationException {
// TODO Auto-generated method stub
this.execute(arg0.getInputPayload().getInputStream(), arg1.getOutputPayload().getOutputStream());
In case you are working in PI 7.0 you can use this code
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Map;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Document;
import com.sap.aii.mapping.api.StreamTransformation;
import com.sap.aii.mapping.api.StreamTransformationException;
public class RemoveRootNode implements StreamTransformation{
public void execute(InputStream in, OutputStream out)
throws StreamTransformationException {
// TODO Auto-generated method stub
try
DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
DocumentBuilder builderel=factory.newDocumentBuilder();
/*input document in form of XML*/
Document docIn=builderel.parse(in);
/*document after parsing*/
Document docOut=builderel.newDocument();
TransformerFactory tf=TransformerFactory.newInstance();
Transformer transform=tf.newTransformer();
if(docIn.getDocumentElement().hasChildNodes())
docOut.appendChild(docOut.importNode(docIn.getDocumentElement(),true));
transform.transform(new DOMSource(docOut), new StreamResult(out));
else
out.write(null);
catch(Exception e)
public void setParameter(Map arg0) {
// TODO Auto-generated method stub
public static void main(String[] args) {
// TODO Auto-generated method stub
try{
RemoveRootNode genFormat=new RemoveRootNode();
FileInputStream in=new FileInputStream("C:\\apps\\sdn\\rootNode.xml");
FileOutputStream out=new FileOutputStream("C:\\apps\\sdn\\rootNode1.xml");
genFormat.execute(in,out);
catch(Exception e)
e.printStackTrace();
The code for PI 7.0 should also work for PI 7.1 provided you use the right jar files for compilation, but vice-versa is not true.
Could you please let us know if this code was useful to you or not?
Regards
Anupam
Edited by: anupamsap on Dec 15, 2011 9:43 AM -
Hi...I was wondering if I could get help with this function. How do i write a function to return hours between a begin date and an end date for an employee. Thanks so much
EdStevens wrote:
AlexeyDev wrote:
sb92075 wrote:
select (date2-date1)*24 from dual;not as above but as below
select (date2-date1)/24 from dual;date2-date1 is amount of days. Divide it by 24 and what? if you multiply it on 24 you will have a chance to know how many hours between these two dates. :-)Don't forget that a DATE type also includes a time component.I suppose it doesn't matter if you did a difference between two dates. The result is always number of days. -
Help with Java Printing-Custom paper sizes
Hi,
I'm trying to print documents with custom paper sizes out of java.
I can print fine when I don't try to set the MediaSize to a custom size or when I use already named constants like: "MediaSizeName.JIS_B4"
The error message I get is this:
java.lang.ClassCastException
at javax.print.attribute.AttributeSetUtilities.verifyAttributeValue(Unknown Source)
at javax.print.attribute.HashAttributeSet.add(Unknown Source)
at hello.Printy.printDocument(Printy.java:103)
at hello.Printy.main(Printy.java:135)
The offending line(103) looks like this:
pras.add(new MediaSize(1,10,MediaSize.INCH ));The function that its from looks like this:
public void printDocument()
try
System.out.println("input file name is");
System.out.println(inputFileName);
PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
PrintService printService[] = PrintServiceLookup.lookupPrintServices(flavor, pras);
PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService();
PrintService printPrintService = null;
// didn't work pras.add(new MediaSize(1,10,MediaSize.INCH) );
PrintService service = ServiceUI.printDialog(null, 200, 200,printService, defaultService, flavor, pras);
if (service != null)
System.out.println("There is a service aunty-may!!");
DocPrintJob job = service.createPrintJob();
FileInputStream fis = new FileInputStream(getInputFileName());
DocAttributeSet das = new HashDocAttributeSet();
//pras.add(new MediaSize((float)3.25, (float)4.75, Size2DSyntax.INCH ) );
// - works
//pras.add(MediaSizeName.JIS_B4);
pras.add(new MediaSize(1,10,MediaSize.INCH ));
//pras.add(new MediaSize(1,10,MediaSize.INCH) );
System.out.println("Doc has been set to custom size");
Doc doc = new SimpleDoc(fis, flavor, null);
job.print(doc, pras);
System.out.println("any doc for you?");
catch (Exception e)
e.printStackTrace();
}Any help with this would be greatly appreciated. I'm new to java but I've programmed a bunch in c++.Hmm ... no real help, but I found this note in the API:
MediaSize is not yet used to specify media. Its current role is as a mapping for named
media (see MediaSizeName). Clients can use the mapping method
MediaSize.getMediaSizeForName(MediaSizeName) to find the physical dimensions of
the MediaSizeName instances enumerated in this API. This is useful for clients which
need this information to format & paginate printing. -
Need help with java will even pay
I need extreme help. I just don't have time lately to write these programs and I have fallen extremely behind. Basically all I need is to pass this class and right now until I can get some more help I just can't make the deadlines. If someone could help me I will pay you just like a tutor.
Requirements for Lab.
You will need to develop a variety of classes for this lab. Specifically, you need to create:
+1. a "PersonGUI" class that displays fields for a person's: firstName, lastName, identificationNum, and sex.+
+2. a "StudentGUI" class that provides Java components for the entry of: classification (freshman, sophomore, junior, senior, or graduate student), and Checkboxes for (a student being in the Honor's program and/or in the ROTC).+
+3. a "FacultyGUI" class that provides Java components for the entry of: rank (instructor, assistant, associate, or full professor), years of service, and salary.+
+4. a "Statistics" class that, when instantiated, creates an object containing an instance variable for each of the the statistical values outlined below. (Each of these instance variables should be declared to be "private".)+
Your main Lab6 class should provide a means for the user to:
+1. Specify the kind of personal data to be entered (Student or Faculty), and+
+2. Then, depending on the choice made, appropriate fields should be displayed to allow the user to input appropriate information for the type of personal data being entered, and+
+3. Controls that support the following functionality:+
* a "CANCEL" control that will terminate any operation currently being performed and return the user to the "Startup" window.
* a "SAVE" control that will cause the just entered data to be harvested from the graphical user interface and the appropriate statistics to be updated. Note: this function may NOT be performed if any of the student or faculty member data fields have not been filled in.
* a "RESET" control that will erase all information recorded to date (i.e., all summary variables are reset to zero).
* a "CLEAR" control that will erase all fields for the personal data currently being entered.
* and a "DISPLAY TOTALS" control that will display, when pressed, the following data:
+1. For students:+
+1. total number of students entered so far,+
+2. number who are male and number who are female,+
+3. number of freshmen, sophomores, juniors, seniors, and graduate students,+
+4. number of students who are in the Honor's program and number who are in the ROTC.+
+2. For faculty:+
+1. total number of faculty entered so far,+
+2. number who are male and number who are female,+
+3. the name and salary of the highest paid faculty member on campus.+
Your program should validate numeric data to the extent:
+1. no numeric field (id number, years of service, or salary) may be left blank by the user. If done so, the user should be alerted to enter a numeric value.+
+2. when the user enters a "years of service" value for a faculty member - the value entered should be verified to be a valid integer value in the range 1 to 50. If the data entered is outside the valid range or is not a valid integer - your program should reject the value and prompt the user that invalid data has been entered and that a new value is necessary.+
+3. when a faculty salary is entered, verify that it is a floating-point value in the range $35,000 to $200,000. Handle invalid data as described above.+
+4. Similarly, if an invalid integer value is entered for the identification number, the value should be rejected and the user prompted to reenter.+
+5. Information should not be saved, nor should statistical values be updated, until all numeric data has been validated.+
Note -- You will be graded on appropriate use of instance vs. local variables, use of methods, and passing parameters and returning appropriate values.
+1. The 'Statistics" class MUST provide "mutator" and "accessor" methods that are required to access values or to modify the values of any variable. REMEMBER ALL VARIABLES ARE DECLARED TO BE "private"!!+
+2. You should implement methods to verify the data, as detailed above. The methods should return boolean values indicating whether the data is acceptable or not.+Sorry to hear about your problems - lack of time, having fallen behind, imminent failure etc - but none of these are Java problems.
This site deals with Java problems: compiler or runtime behaviour that people can't understand. If you have problems of that sort (and especially if solving those problems would help with the problems you did describe) then post them.
Otherwise you would seem to be in the wrong place. -
Define Inbound Interface for Interface Mapping with Java functions
Hi,
we are developing an R/3-XI-ITK-SBO system. We realized our SOAP component as custom java functions and we installed it on ITK.
We need to import and configure these functionality in XI because we need to reference to it when we define the Message Interface and the Interface Mapping in Integration Builder Design.
Someone is able to tell us how we can import and configure these java function or definition in XI?
Thanks in advance.
Best regards.Hi,
INBOUND:
Step 1. EDI Subsystem creates an IDoc file from EDI Messages
2. Subsystem calls Functional Module EDI_DATA_INCOMING from startRFC program.
3. Data in Control Record is validate against the Partner Profile.
4. IDoc is generated in Database and syntax check is carried out.
5. IDoc file is deleted once file read.
6. Event PROCESSSTATE REACHED is triggered in Idoc Object Workflow.
7. Check for Process Immediately.
If NO
Execute RBDAPP01 Program
Else
Read Process Code from Partner Profile
Process Code Points to Function Module
Application Document Posted.
further help:
check url
http://www.sappoint.com/abap/ale.pdf
http://www.sappoint.com/abap/ale2.pdf
http://www.sapgenie.com/ale/configuration.htm
http://www.sappoint.com/abap/ale.pdf
http://www.sappoint.com/abap/ale2.pdf
http://www.sapdevelopment.co.uk/training -
Hi all,
I need some help with ASO mdx function.
Avg({Leaves([Employees].Currentmember)}, [Calculated_Field]). This will give me the average for Calculated_Field for all levels of Employees. But i want to add more dimensions like Region and year.
Please advice how can I achieve this.
Thanks
Andyyou have to use cross join in order to add more dimension members to the formula.This will give you some idea
Re: Writing formula in Outline??????
Regards,
RSG -
Help with JAVA StringObject - & assign user input; StringMethod
Hi Everyone! I need help with this Java Program, I need to write a program, single class, & file. That will prompt the user to enter a word. The output will be separted by hypens and do this until the user enters exit. I think this is done by using a string variable. Then use the length of the word to setup a loop to print each letter out with hypens. (example c-a-t)
1. I think I should store the word like this: Word.Method(). Not sure of this the API was confusing for me because I wasn't sure of what to do.
2. A string method to find out how many letters are in the user's word in order to setup a loop to print each letter out. I think I can use a While loop to accomplish this?
3. A string method to access each letter in a string object individually in order to print individual letters to the screen with those hypens. This is really confusing for me? Can this be accomplished in the While loop? or do I declare variables in the main method.
Any examples you can refer me to would be greatly appreciated. ThanksGetting user input:
This may look strange to a newbie but there's nothing much you can do since you wanted a single class file:import java.io.*
public class InputTest {
public static void main(String[] args) {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Hi! Please type a word and press enter.");
String lineReadFromUser = in.readLine();
System.out.println("You typed " + lineReadFromUser);
}You can get the lenght of a String using the length() method. Example: int len = "Foobar".length();
You can get the individual characters of a String with the charAt() method. Example: char firstCharOfString = string.charAt(0);
(remember that the argument must be from 0 to length-1)
You can access the documentation of all classes, including java.lang.String, at http://java.sun.com/j2se/1.3/docs/api/index.html You can also download the docs. -
I need some help with some Java assignments. I'm new to it, and I am having some problems.
People will help you - if you help them first by stating your problem. If it was a generic question wanting to know wether anyone will help you at all - the answer is yes, they would - you have to put your work in first however.
Ironluca -
Hi everybody,
I have a simple Java application that has a JFrame containing a TextField displaying some text inside it. I am using the NetBeans IDE. I am trying to Enable Java Web start for this application. The steps I have taken upto now are:
1. Right click on Project, Java Web Start -> Enable Java Web Start. This created the jnlp file.
2. In the Resources section, I added the jar file for swing. ( I am not sure if I have to add the path for jnlp.jar etc, or are these found automatically?)
3. Right click on Project, Java Web Start -> Deploy with Java Web Start. This launches the browser with the Click me link, but on clicking this link, I get the following error.
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: Wrapper cannot find servlet class jnlp.sample.servlet.JnlpDownloadServlet or a class it depends on
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
java.lang.Thread.run(Thread.java:534)
root cause
java.lang.ClassNotFoundException: jnlp.sample.servlet.JnlpDownloadServlet
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1332)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1181)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
java.lang.Thread.run(Thread.java:534)I have all the jnlp files in my jdk directory, and I am not sure why it can't find it. Is there something I am missing?
Thanks
GeorgeI am not sure what it has to do with servlets, I just followed a tutorial on using Netbeans with Java Web Start, and did only the steps as mentioned in my first post. And ended up with the error.
Anyways, I added the jnlp jar files(jnlp.jar, jnlp-servlet.jar, jardiff.jar) in the WEB-INF/lib directory. And it seems to deploying it now. I can get my application to load on clicking on the "Click me" link. But the controls on my application don't seem to be working.
Also, when I try to Right click on my project -> Java Web Start -> Run with Java Web Start, I get the following error message,
javaws-run: C:\Documents and Settings\Lux\Visualization\nbproject\build-jaws-impl.xml:36: Execute failed: java.io.IOException: CreateProcess: C:\j2sdk1.4.2_13\bin\javaws "file:///C:/Documents and Settings/Lux/Visualization/Visualization.jnlp" error=2
BUILD FAILED (total time: 0 seconds)
Any help appreciated.
Thanks.
George -
Hi I got this error and i don't know what it means or how to fix it
if you understand it please help
Bad installation. Error invoking java vm(execv)
C:\program Files\java\ire1.5.0_10\bin\javaw.exe
I got this error when i went to add and remove programs in winXP
and highlighted a program called Goban3 and clicked on change\remove
http://www.gokgs.com/
goban3 is sign on link to KGS
if you check the site KGS you can see some java related items that have to be done i use this sights for years without problems
but now im having problems with java
thanks for serious reply
Message was edited by: r
revestThat looks alot like this.
-
Help with java digital signing code
hello people.
can anybody help me?
i have find a java code to resolve my problem with sending pay in soap envelope with digital signature and attached certificate. i compiled it with jdk jdk1.6.0_37. and it works.
i need it to work in built-in jvm in oracle 9i. in oracle 9i jvm release is 1.3.1. Java code does not work there. there is an error
class import com.sun.org.apache.xerces.internal.impl.dv.util.Base64 not found in import.
i did not find this class in network.
can anybody help with rewriting it for jvm 1.3.1?
thanks in advance.
code below:
import com.sun.org.apache.xerces.internal.impl.dv.util.Base64;
import java.io.*;
import java.security.Key;
import java.security.KeyStore;
import java.security.PrivateKey;
import java.security.Signature;
import java.security.cert.Certificate;
public class Sign {
public static void main(String[] args) throws Exception {
// TODO code application logic here
BufferedReader reader = new BufferedReader(new FileReader("c:\\cert.p12"));
StringBuilder fullText = new StringBuilder();
String line = reader.readLine();
while (line != null) {
fullText.append(line);
line = reader.readLine();
KeyStore p12 = KeyStore.getInstance("pkcs12");
p12.load(new FileInputStream("c:\\cert.p12"), "Hfrtnf$5".toCharArray());
//????????? ????????? ????, ??? ????? ????? ???????????? alias ? ??????
//Key key = p12.getKey("my kkb key", "ryba-mech".toCharArray());
Key key = (Key) p12.getKey("my kkb key", "Hfrtnf$5".toCharArray());
Certificate userCert = (Certificate) p12.getCertificate("my kkb key");
String base64Cert = new String(Base64.encode(userCert.getEncoded()));
//signing
Signature signer = Signature.getInstance("SHA1withRSA");
signer.initSign((PrivateKey) key);
signer.update(fullText.toString().getBytes());
byte[] digitalSignature = signer.sign();
String base64sign = new String(Base64.encode(digitalSignature));
String base64Xml = new String(Base64.encode(fullText.toString().getBytes()));
System.out.println("<certificate>" + base64Cert+"</certificate>");
System.out.println("<xmlBody>" + base64Xml+"</xmlBody>");
System.out.println("<signature>" + base64sign+"</signature>");
Edited by: user13622283 on 22.01.2013 22:08My first search is to see if there is an Apache commons project that provides it. Lo and behold:
http://commons.apache.org/codec/apidocs/org/apache/commons/codec/binary/Base64.html
commons-codec. -
Help with java coding involving stacks and queues.
I was wondering if anyone can help with tips on what to fill in for the coding.
My project is to creating a word processor by the process of 2 stacks. The methods are given, but I'm not really sure what goes in them. So I was wonder if anyone can answer this for me, or give tips that would be great thanks.
Example Code, similar to what were suppose to do, but instead it's CHARACTER stacks rather than String.
[http://www.cs.jhu.edu/~jason/226/hw3/source/EditableString.java]/** Stack of Characters to the left of the cursor; the ones
* near the top of the stack are closest to the cursor.
private Stack left;
/** Stack of Characters to the right of the cursor; the ones
* near the top of the stack are closest to the cursor.
private Stack right;Do you know how a stack works?
No - Google it
Yes - Continue on with this post
/** Another constructor.
* @param left The text to the left of the cursor.
* @param right The text to the right of the cursor.
public EditableString(String left, String right) {
// fill this in
}Do you know how to read?
No - How did you answer this question then?
Yes - Then why can't you read the comments above each method. Is it really that hard to understand?
Mel -
Hi,
I tried integrating java code with java embedding acitivity, but in em it is failing. Can anybody know how to convert the below java code to a webservice, so that I can pass the input paramaters directly to that webservice. I tried of converting java code to webservice in jdeveloper, but because of static void main it is not converting. Can somebody help me in this issue.
this is the original executable java code.
package com.holx.api.test;
import java.util.HashMap;
import com.agile.api.APIException;
import com.agile.api.AgileSessionFactory;
import com.agile.api.IAdmin;
import com.agile.api.IAgileClass;
import com.agile.api.IAgileList;
import com.agile.api.IAgileSession;
import com.agile.api.IAutoNumber;
import com.agile.api.IDataObject;
import com.agile.api.INode;
import com.agile.api.IProperty;
import com.agile.api.IServiceRequest;
import com.agile.api.PropertyConstants;
import com.agile.api.ServiceRequestConstants;
import com.agile.px.ActionResult;
import java.net.URL;
public class TestAgileAPI {
// @Override
// public ActionResult doAction(IAgileSession arg0, INode arg1,
// IDataObject arg2) {
// TODO Auto-generated method stub
// return null;
* @param args
public static void main(String[] args) {
IAgileSession m_session = null;
IAdmin admin = null;
IAgileClass cls = null;
String sr="PR-KB00028";
String userName="*******";
String password="*******";
String URL="*********";
try {
HashMap params = new HashMap();
params.put(AgileSessionFactory.USERNAME, userName);
params.put(AgileSessionFactory.PASSWORD, password);
AgileSessionFactory instance = AgileSessionFactory.getInstance(URL);
m_session = instance.createSession(params);
admin = m_session.getAdminInstance();
cls = admin.getAgileClass( "ProblemReport" );
IServiceRequest psr = (IServiceRequest)m_session.createObject( "ProblemReport", sr);
psr.setValue(ServiceRequestConstants.ATT_COVER_PAGE_DESCRIPTION, "KB-Test-20121400");
} catch (APIException e) {
e.printStackTrace();
} finally {
m_session.close();
Can somebody help me in converting this code into a webservice which accepts String SR as input from soa.
Thanks,Hi Francois,
I never tried to use a webservice in the value help wizzard, so I don't know if it works or not.
But for your problem you can build your own value help to avoid the problem.
You told us that the webservice works in the storyboard. The value help wizard "only" creates a popup iView in your model and assigns the output field of the popup to an input field in a form.
Maybe as a solution you can insert a popup to the model by yourself. Assign the output field of your popup to the input field for which you want to have the value help. Inside the popup iView you can use your custom built webservice.
I know that this is a little bit circuitous, but I think it will work.
Regards
Christophe -
Help with java translator...PLEASE!!!
I am currently in the process of learning the JAVA language.
i am having real problems tackling a question about programming a translator, can anyone help with this question?
- Write a Java class 'German' to model the german dictionary(using only a few phrases, say 4-5). You will need to choose an appropriate representation for the constant dictionary(ignore accents etc), and to provide a method 'Translate' that, given an English phrase, returns the corresponding German phrase. You must also deal with phrases that are not available.
I hope someone can help...
JohnLearn a Map structure.
Maybe you are looking for
-
Hi, in rpt i need to show the diff b/w 2 dates. i.e., (END_DATE- START_DATE). so i have created 2 formula variables on END_DATE- START_DATE. i just wanna confirm whether i created it properly or not. Procedure: Under Formula Variable-->New Variable.
-
10.7.3 MBP Wifi Problem - Endless Timeouts & Dropped connections
I've been reading around here a bit already and so I know many other people are having Wifi issues with Lion, but given that there are so many discussions and so many pages of talk, it's hard to go through it all, and using the search I haven't found
-
Pavilion dv6 won't go into Sleep Mode
My HP Pavilion dv6 always used to go into sleep mode everytime I closed the lid as it's supposed too. However recently when I close the lid it just loops the login screen as if you've locked your laptop. It makes the sound it used to make when I'd op
-
Has anyone tried marble yet? FREE Navigation soft...
i just loaded it and tried it briefly...looks good for anyone that is looking for a replacement nav software! note: i am in no way affiliated with this software however it looks to be a good fit for the betterment of nokia n900 users. Linux Journal
-
InfoStructure and Standard Analysis enhancement
Hi. My task is add into customer InfoStructure new field, that is calculated on some another fields and database data. ( add new field to Standard Analysis based on customer InfoStructure ) I have added new field to infostructure and now I would like