on 10-29-2007 7:06 AM
Hi,
I'm working with Java Mapping.
Scenario is File to File (XML to XML). I've developed the java program by using DOM parser in it. I've completed everything at IR (Datatypes, Msg Types, Imported Archives, Interface Mapping) and everything at ID.
When I test in Interface Mapping, I got the following error:
12:28:28 Start of test
LinkageError at JavaMapping.load(): Could not load class: JavaMappingWithDOM
java.lang.UnsupportedClassVersionError: JavaMappingWithDOM (Unsupported major.minor version 49.0) at java.lang.ClassLoader.defineClass0(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:539) at java.lang.ClassLoader.defineClass(ClassLoader.java:448) at com.sap.aii.ibrep.server.mapping.ibrun.RepMappingLoader.findClass(RepMappingLoader.java:175) at java.lang.ClassLoader.loadClass(ClassLoader.java:289) at java.lang.ClassLoader.loadClass(ClassLoader.java:235) at com.sap.aii.ibrep.server.mapping.ibrun.RepJavaMapping.load(RepJavaMapping.java:136) at com.sap.aii.ibrep.server.mapping.ibrun.RepJavaMapping.execute(RepJavaMapping.java:50) at com.sap.aii.ibrep.server.mapping.ibrun.RepMappingHandler.run(RepMappingHandler.java:80) at com.sap.aii.ibrep.server.mapping.rt.MappingHandlerAdapter.run(MappingHandlerAdapter.java:107) at com.sap.aii.ibrep.server.mapping.ServerMapService.transformInterfaceMapping(ServerMapService.java:127) at com.sap.aii.ibrep.server.mapping.ServerMapService.transform(ServerMapService.java:104) at com.sap.aii.ibrep.sbeans.mapping.MapServiceBean.transform(MapServiceBean.java:40) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0_0.transform(MapServiceRemoteObjectImpl0_0.java:167) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0_0p4_Skel.dispatch(MapServiceRemoteObjectImpl0_0p4_Skel.java:104) at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:312) at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:199) at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:129) at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33) at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
12:28:30 End of test
Please anybody resolve this.
Thanks in advance
Regards
Krishna.
Hello
this error occurs because of wrong java class file version, looks like you have compiled the class file for JAVA 1.5 or higher -> XI runs on Java 1.4 AFAIK
if you are developing your mapping in eclipse open your project select your project goto Project -> Properties (or right click your project in the project explorer and then select properties)
then select Java Compiler -> select enable project spec. settings -> and set Compiler compliance level to 1.4 or lower and rebuild your project
regards franz
reward points if useful
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
hi krishna,
it is not able to find the java class file. did you zip the class file and then imported in to XI ??
regards
Ramesh P
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Ramesh,
I've zipped only<b> .class</b> file.
Now I got the following error:
12:56:20 Start of test
LinkageError at JavaMapping.load(): Could not load class: JavaMappingWithDOM
java.lang.UnsupportedClassVersionError: JavaMappingWithDOM (Unsupported major.minor version 49.0) at java.lang.ClassLoader.defineClass0(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:539) at java.lang.ClassLoader.defineClass(ClassLoader.java:448) at com.sap.aii.ibrep.server.mapping.ibrun.RepMappingLoader.findClass(RepMappingLoader.java:175) at java.lang.ClassLoader.loadClass(ClassLoader.java:289) at java.lang.ClassLoader.loadClass(ClassLoader.java:235) at com.sap.aii.ibrep.server.mapping.ibrun.RepJavaMapping.load(RepJavaMapping.java:136) at com.sap.aii.ibrep.server.mapping.ibrun.RepJavaMapping.execute(RepJavaMapping.java:50) at com.sap.aii.ibrep.server.mapping.ibrun.RepMappingHandler.run(RepMappingHandler.java:80) at com.sap.aii.ibrep.server.mapping.rt.MappingHandlerAdapter.run(MappingHandlerAdapter.java:107) at com.sap.aii.ibrep.server.mapping.ServerMapService.transformInterfaceMapping(ServerMapService.java:127) at com.sap.aii.ibrep.server.mapping.ServerMapService.transform(ServerMapService.java:104) at com.sap.aii.ibrep.sbeans.mapping.MapServiceBean.transform(MapServiceBean.java:40) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0_0.transform(MapServiceRemoteObjectImpl0_0.java:167) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0_0p4_Skel.dispatch(MapServiceRemoteObjectImpl0_0p4_Skel.java:104) at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:312) at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:199) at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:129) at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33) at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
12:56:20 End of test
Please help me.
Thanks
Krishna.
ok. The following is the Java program.
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Map;
import java.util.Vector;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.FactoryConfigurationError;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.TransformerFactoryConfigurationError;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Attr;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.w3c.dom.Text;
import org.xml.sax.SAXException;
import com.sap.aii.mapping.api.StreamTransformation;
import com.sap.aii.mapping.api.StreamTransformationConstants;
import com.sap.aii.mapping.api.StreamTransformationException;
import com.sap.aii.mapping.api.AbstractTrace;
public class JavaMappingWithDOM implements StreamTransformation{
private static Vector nameVector = new Vector();
private static Vector valueVector = new Vector();
private DocumentBuilderFactory dbf = null;
private DocumentBuilder db = null;
private Document outputDoc = null;
private Document inputDoc = null;
JavaMappingWithDOM(){
}
public void setParameter(Map map){
}
public void execute(InputStream inputFile, OutputStream outputFile)throws StreamTransformationException{
try{
dbf = DocumentBuilderFactory.newInstance();
db = dbf.newDocumentBuilder();
inputDoc = db.parse(inputFile);
parseInput(inputDoc);
generateXMLOutput();
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(outputDoc);
StreamResult result = new StreamResult(outputFile);
transformer.transform(source, result);
} catch (FactoryConfigurationError e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ParserConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (TransformerConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (TransformerException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException ex) {
System.out.println("File does not exists!!!");
} catch (SAXException ex) {
System.out.println("SAX EX :"+ex);
}
}
void parseInput(Node node){
int nodeType = node.getNodeType();
if (nodeType == Node.ELEMENT_NODE){
if (node.getNodeName()!=null){
nameVector.add(node.getNodeName());
}
if (node.getNodeValue()!=null){
valueVector.add(node.getNodeValue());
}
if (node.getAttributes().item(0)!=null){
nameVector.add(node.getAttributes().item(0).getNodeName());
valueVector.add(node.getAttributes().item(0).getNodeValue());
}
}
NodeList childNodesList = node.getChildNodes();
if(childNodesList != null){
for(int i=0; i<childNodesList.getLength(); i++){
Node childNode = childNodesList.item(i);
if ( childNode.getNodeValue()!=null ){
if (childNode.getNodeValue().trim().length()!=0) {
valueVector.add(childNode.getNodeValue());
}
}
parseInput(childNodesList.item(i));
}
}
}
void generateXMLOutput(){
try{
dbf = DocumentBuilderFactory.newInstance();
db = dbf.newDocumentBuilder();
outputDoc = db.newDocument();
Element rootElement_PersonInformation = outputDoc.createElement("DT_Receiver_JavaMappingDOM_Demo_Bhanu");
String fullName = null;
int nameVectorCounter = 1;
int valueVectorCounter = 0;
for(valueVectorCounter=0; valueVectorCounter<valueVector.size(); valueVectorCounter++){
Element childElement_Name = outputDoc.createElement(nameVector.elementAt(nameVectorCounter++).toString());
rootElement_PersonInformation.appendChild(childElement_Name);
Attr attrName = outputDoc.createAttribute(nameVector.elementAt(nameVectorCounter).toString());
attrName.setNodeValue(valueVector.elementAt(valueVectorCounter++).toString());
childElement_Name.setAttributeNode(attrName);
fullName = valueVector.elementAt(valueVectorCounter+).toString()" "+valueVector.elementAt(valueVectorCounter).toString();
Node childElement_Name_FullName = outputDoc.createElement("FullName");
Text childElement_Name_FullName_Text = outputDoc.createTextNode(fullName);
childElement_Name_FullName.appendChild(childElement_Name_FullName_Text);
childElement_Name.appendChild(childElement_Name_FullName);
nameVectorCounter+=3;
}
outputDoc.appendChild(rootElement_PersonInformation);
} catch (FactoryConfigurationError e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ParserConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (TransformerFactoryConfigurationError e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String args[]){
}
}
-
This is the program.
Regards
Krishna.
User | Count |
---|---|
86 | |
10 | |
10 | |
9 | |
6 | |
6 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.