Using Fortran Funcrions in Java
Hi,
In my project I need to call some subroutine, made in fortran, into my java program but I don't know how to do it...
My fortran subroutine is called: SUBROUTINE LETQUE(BUF,QUE,SIZE,BYPASS)
What should i do to include in my java???
Thank,
BV
You may be able to access FORTRAN functions from Java using the Java Native Interface (JNI). Here's the JNI tutorial, which only has examples in C: http://java.sun.com/docs/books/tutorial/native1.1/index.html
You'll probably want the trail "Writing Java Programs with Native Methods". Your biggest challenge will be marshalling and unmarshalling the input parameters and return values of your FORTRAN fucntions--that is, converting the data back and forth between Java and FORTRAN data formats. You are probably going to have to do some experimenting to get each data type to translate between languages, and should be very familiar with the format of your FORTRAN function's parameters, down to the byte level. You will also need to find out how to create a shared library (on Unix) or a DLL (on Windows) from a FORTRAN source file.
Try searching the forums for "fotran". I see a lot of people are creating intermediate C-language wrappers for their FORTRAN routines, and calling the C from JNI. That might be an easier path.
Another possibility, if you're processing large amounts of data in batches, would be to use text files to exchange data between a stand-alone Java application and a stand-alone FORTRAN program.
Good luck!
Similar Messages
-
How to use excel api in java?
I need to use excel api in Java to generate data in excel format. Can any one tell any of the use ful Excel api that we can down load from net? i have read about Apache's POi-hssf-Java api. But the jar i downloaaded from Apache site is not working ? Can anybody please send me the jar for taht Api ?
Hi,
In fact i was not clear about whcih jar file to download from the apache site. i found one folder structure like this
-parent
-bin
-src
All these folders contained some zip files. i took the zip files and extracted them. And i set teh class path also . But when i tried to import in java programs ,these jar files are giving compilation errors -
Unable to Print Purchase order automatically using SAP GUI for JAVA
Hi SAP gurus,
Some of the PC's in our company use windows and some LINUX. Therefore we use two types of SAP GUI. One for windows and the other one JAVA. PO approval was set to print automatically. In a windows setting, there are no problems with this setup. But in SAP GUI for JAVA, no print outs are produced and no error messages are displayed. I am using SAP GUI for JAVA version 7.10 ver 6. and I use Front end printing for linux access method G.
please help,
gungertzhi gungertz,
You can use U type access method for printing SAP document using linux desktop.
Please refer to my blog posting here (http://sapbasis.wordpress.com/2007/08/23/print-sap-documents-using-linux/)
ardhian
http://ardhian.kioslinux.com
http://sapbasis.wordpress.com -
Using Oracle Berkeley DB Java Edition RELEASE 3.2
Hi,
I am completely new to Oracle. I intend to use Oracle Berkeley DB Java Edition RELEASE 3.2., in conjunction with Java.
Can some one help me figure out what documentation I should use, and the learning path ?
Any suggestions would be greatly appreciated.
Thanks
Ravi Banthia
KolkataPlease refer
http://www.oracle.com/technology/products/berkeley-db/je/index.html -
Can I Design a Forum with using web dynpro for java?
Hi All:
Can i design a forum with using web dynpro for java?
I want to design an application like a simple forum which maybe has many replies.So if i use
the UI technology "web dynpro for java", i will to create UI elements dynamically.How can i control this
dynamical UI elements to keep layout ?Hi,
yes you can do that....
for exaple if you observe SDN...
you can imagine like....
A big Transparent Container(TC)....
Inside that number of other TCs(depending upon the question nd its replies...)....
In side each TC, again around 9 UIElements....
one for menioning what is the question/reply?
other for your description of question/reply...
other for your name,
displaing your fourm point... etc...
So it will be
for(loop till your (Question+No of replies))
Create Transparent Container....
Add Childs to the Container...
Decide your layout....
In case if you want to know how to create UIElements dynamically....
http://help.sap.com/saphelp_nw04/helpdata/en/4f/07cf3dd28b5610e10000000a114084/frameset.htm
https://www.sdn.sap.com/irj/sdn/wiki?path=/display/wdjava/dynamic%2bui%2bgeneration
Regards,
Srinivas.
Regards,
Srinivas. -
Commenting a Line in ABAP Editor when using SAP GUI for java
Hi,
In ABAP editor we can highlight the line which are to be comment and use cmd+< sign to comment those lines. What will be the command to be used to achieve the same functionality when using SAP GUI for JAVA on an iMac.Hello Kedar,
please check with SAP GUI for Java 7.20 rev 5 before submitting a bug report.
Also please verify, that cmd-< and cmd-> are not assigned as "Keyboard Shortcuts" in the "Keyboard" control panel of "System Preferences".
Bug reports can be submitted with the [SAP Message Wizard|http://service.sap.com/message], for SAP GUI for Java please use component BC-FES-JAV.
Best regards
Rolf-Martin -
How to use host variable in Java?
How do I use host variable in java? I am getting SQL code of -404 and description of SQL code is The UPDATE or INSERT statement specifies a String that is too long column-name SQLSTATE=22001. Below is my code:
* i n s e r t M e s s a g e
* insertMessage: This method will retrive detail message and other fields for
* selected item from screen1.
public final Collection insertMessage(String businessId,String messageNumber,String messageType,
String messageTitle,String printStyle,String statusIndicator,
String approverId,String lastUpdateId,String longMessage) {
MessageTransport msi = new MessageTransport();
PreparedStatement ps = null;
Connection connection = null;
MessageTransport msi1 = new MessageTransport();
PreparedStatement ps1 = null;
Connection connection1 = null;
ArrayList list = new ArrayList();
try {
if (businessId != null) {
businessId = businessId.trim();
if (messageNumber != null) {
messageNumber = messageNumber.trim();
if (messageType != null) {
messageType = messageType.trim();
if (messageTitle != null) {
messageTitle = messageTitle.trim();
if (printStyle != null) {
printStyle = printStyle.trim();
if (statusIndicator != null) {
statusIndicator = statusIndicator.trim();
if (approverId != null) {
approverId = approverId.trim();
if (lastUpdateId != null) {
lastUpdateId = lastUpdateId.trim();
if (longMessage != null) {
longMessage = longMessage.trim();
int len = longMessage.length();
if (len > 254) {
int constant = 254;
int k = len % constant; //k will hold value that has number of loops including initial insert.
k = k - 1; //this is for total number of loop.
int j = len / constant; //this will have remainder if any to insert rest of longmessage.
System.out.println("Display remainder: " + k);
System.out.println("Display divisible: " + j);
System.out.println("Display Length of longMessage: " + len);
StringBuffer sql = new StringBuffer();
sql.append("INSERT INTO " + MESSAGE_TBL + " ( MT_BUS_ID,MT_MSG_NBR,MT_MSG_TYPE,MT_MSG_TITLE,MT_PRINT_STYLE,MT_APV_STATUS,MT_APV_ID,MT_APV_DT,MT_APV_TM,MT_LAST_UPDATE_ID,MT_LAST_UPDATE_DT,MT_LAST_UPDATE_TM,MT_MSG_TXT ) VALUES ");
sql.append("(");
sql.append("'");
sql.append(businessId).append("'");
sql.append(",").append(messageNumber);
sql.append(",").append("'I'");
sql.append(",").append("'").append(messageTitle).append("'");
sql.append(",").append("'").append(printStyle).append("'");
sql.append(",").append("'P'");
sql.append(",").append("' '");
sql.append(",").append("CURRENT DATE");
sql.append(",").append("CURRENT TIME");
sql.append(",").append("'").append(lastUpdateId).append("'");
sql.append(",").append("CURRENT DATE");
sql.append(",").append("CURRENT TIME");
sql.append(",").append("'").append(longMessage).append("'");
sql.append(")");
System.out.println("Display SQL Statement: " + sql);
connection = DriverManager.getConnection(DATABASE_URI, USER, PASS);
ps = connection.prepareStatement(sql.toString());
ps.executeUpdate();
System.out.println("Refreshed Record: ");
catch (SQLException sqle) {
System.out.println("SQLException: "+ sqle + ". SQLSTATE=" + sqle.getSQLState()+" SQLCODE=" + sqle.getErrorCode());
finally {
if (ps != null) {
try {
ps.close();
ps=null;
catch (Exception e) {}
if (ps1 != null) {
try {
ps1.close();
ps1=null;
catch (Exception e) {}
if (connection != null) {
try {
connection.close();
connection = null;
catch (Exception e) {}
if (connection1 != null) {
try {
connection1.close();
connection1 = null;
catch (Exception e) {}
return list;
if my longMessage is smaller like one line then everything works fine, but as soon as my longMessage if greater than 254 it starts giving me -404. How do I work around or Is there any way to use host variable in Java?
All kind of help is appreciated. Any question then please email me at [email protected].
Thank you.This is what you got to do to insert a larger value.
//Assuming that message length is less than 254+ 254 characters.
//If larger then run the update loop that many times.
String longMessage = "Blah blah ... ";
String firstPart = "";
String secondPart = "";
int messageLength = longMessage.length();
if (messageLength > 254)
try
firstPart = longMessage.subString(0, 253);
secondPart = longMessage.subString(254, message);
catch (IndexOutOfBoundsException e)
//In the first insert set the first 254 characters
ps.setString(1, firstPart);
int result = ps.executeUpdate();
if (result != 0)
System.out.println("Insert sucessful ");
if (messageLength > 254)
//now update with the second part.
static String UPDATE_SECOND_PART = UPDATE my.table SET LONG_COL = LONG_COL || ? WHERE KEY_COL = ?;
ps2 = connection.getPreparedStatement(UPDATE_SECOND_PART);
ps2.setString(1, secondPart);
ps2.setString(2, businessId); //assuming that businessId is the primary key.
int result2 = ps2.executeUpdate();
if (result2 != 0)
System.out.println("Update sucessful ");
else
System.out.println("Update failed ");
else
System.out.println("Insert failed ");
}Hope this helps. -
How to use sql query in java ?
i don't know how to use sql query in java code.
who can give me some advice?
thankshttp://java.sun.com/developer/onlineTraining/Database/JDBC20Intro/
-
How can i use Unix database in java?
How can i use Unix database in Java?
Message was edited by:
JProI have not a clue about FoxPro, but the db then is FoxPro and not Unix. The better question would be "How do I connect to FoxPro DB running on Unix with JDBC?".
My answer to that would be, search the Internet for a JDBC driver. -
How to use Thread.sleep() with Java Berkeley Base API?
Hi,
I have explained the weird problem about the server was too busy to response to SSH but it continued to finish to run (Server not response when inserting millions of records using Java Base API
Even I tried to increase CachSize and renice Java program, but it did not work. So, I am thinking to set sleeping time for threads in Java Berkeley Base API (using “ps” command, there were 18 light weight processes created). My program did not implement transaction or concurrency because it simply creates (millions) databases records only. Is it possible and correct to do like this in the code:
try{
//do create a db record
Thread.currentThread().sleep(1000);//sleep for 1000 ms
catch(ItrerruptedException ie){
Thank you for your kindly suggestion.
Nattiyawhere can I get the help doc about use AT commands in java.
Can you give me some code example about this. It is
difficulty to me to write it myself.You simply have to send the characters and receive the characters via the comm extension. Here is the ITU standard command set - http://ridge.trideja.com/wireless/atcommands/v250.pdf. Various modems and other devices extend this in a number of ways, you may need to find documentation specific to your device as well. But start with the standard. -
Using .ocx file in java
hi
i have a ocx file and i want to call the functions in this ocx file from java.
can anyone help me in using ocx functions in java program
thanking youget freeware API (njawin11.zip) at http://simtel.net/pub/winnt/java/
-
Parsing an XML using DOM parser in Java in Recursive fashion
I need to parse an XML using DOM parser in Java. New tags can be added to the XML in future. Code should be written in such a way that even with new tags added there should not be any code change. I felt that parsing the XML recursively can solve this problem. Can any one please share sample Java code that parses XML recursively. Thanks in Advance.
Actually, if you are planning to use DOM then you will be doing that task after you parse the data. But anyway, have you read any tutorials or books about how to process XML in Java? If not, my suggestion would be to start by doing that. You cannot learn that by fishing on forums. Try this one for example:
http://www.cafeconleche.org/books/xmljava/chapters/index.html -
Parsing xml using DOM parser in java
hi there!!!
i don have much idea about parsing xml.. i have an xml file which consists of details regarding indentation and spacing standards of C lang.. i need to read the file using DOM parser in java n store each of the attributes n elements in some data structure in java..
need help as soon as possible!!!DOM is the easiest way to parse XML document, google for JDOM example it is very easy to implement.
you need to know what is attribute, what is text content and what is Value in XML then easily you can parse your document with dom (watch for space[text#] in your XML document when you parse it).
you get root node then nodelist of childs for root then go further inside, it is easy believe me. -
How to use the build-in Java parser
Hi All,
I want do use the build-in Java parser. Is this possible? For example I have the following code:
package ch.fhnw;
import javax.tools.*;
public class JavacExample {
* @param args
public static void main(String[] args) {
JavaCompiler javac = ToolProvider.getSystemJavaCompiler();
String arguments = "./src/ch/fhnw/JavacExample.java";
int rc = javac.run(null , null, null, "-verbose", arguments);
System.out.println("Return value: " + rc);
}After parsing, it would be great to have an object or similar which contains the methods, arguments used by the methods, etc. The target is to extract method declarations from java files. Is there a simple way to do it without defining my own EBNF like in JavaCC? Or any other way?
Thank you for your help.
kind regards,
wolfgangYep. bootstrap your knowledge here
[http://java.sun.com/javase/6/docs/technotes/guides/javac/index.html]
[http://forum.java.sun.com/forum.jspa?forumID=514]
Bruce -
How to use XSLT processor in java to get xml
hi friends,
i have raw xml and xsl files as input to xsltprocessor which should give xml as output.
my raw xml and xsl looks like this:-
name_space.xml:-
<xml xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882'
xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882'
xmlns:rs='urn:schemas-microsoft-com:rowset'
xmlns:z='#RowsetSchema'>
<s:Schema id='RowsetSchema'>
<s:ElementType name='row' content='eltOnly'>
<s:AttributeType name='ID' rs:number='1' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='CODE' rs:number='2' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='50'/>
</s:AttributeType>
<s:AttributeType name='NAME' rs:number='3' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='255'/>
</s:AttributeType>
<s:AttributeType name='SOURCE' rs:number='4' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='10'/>
</s:AttributeType>
<s:AttributeType name='IDENT' rs:number='5' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='128'/>
</s:AttributeType>
<s:AttributeType name='OBS_LEVEL' rs:number='6' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='50'/>
</s:AttributeType>
<s:AttributeType name='ATA_CODE' rs:number='7' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='12'/>
</s:AttributeType>
<s:AttributeType name='SCORE' rs:number='8' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='HAS_EFF_NOTE' rs:number='9' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='ui1' dt:maxLength='1' rs:precision='3'
rs:fixedlength='true'/>
</s:AttributeType>
<s:extends type='rs:rowbase'/>
</s:ElementType>
</s:Schema>
<rs:data>
<z:row ID='1018' CODE='OBSV' NAME='ALT BRK - LOSS OF THE PEDAL ARTIFICIAL FEEL ON THE RIGHT SIDE'
SOURCE='' IDENT='' OBS_LEVEL='' ATA_CODE='32-43' SCORE='1'
HAS_EFF_NOTE='0'/>
<z:row ID='1017' CODE='OBSV' NAME='ALT BRK - LOSS OF THE PEDAL ARTIFICIAL FEEL ON THE LEFT SIDE'
SOURCE='' IDENT='' OBS_LEVEL='' ATA_CODE='32-43' SCORE='1'
HAS_EFF_NOTE='0'/>
<z:row ID='100' CODE='LOCAL' NAME='ACCU PRESS DROPS VERY QUICKLY PARKING BRAKE OFF'
SOURCE='' IDENT='' OBS_LEVEL='INDICATOR(S)' ATA_CODE='32-44'
SCORE='1' HAS_EFF_NOTE='0'/>
</rs:data>
</xml>
and my XSL File:-
<?xml version="1.0" encoding="UTF-8" ?>
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema" exclude-result-prefixes="rs z">
<xsl:output method="xml" omit-xml-declaration="yes" indent="yes" />
- <xsl:template match="//xml/rs:data">
- <Entities Count="{count(z:row)}">
<xsl:apply-templates select="z:row" />
</Entities>
</xsl:template>
- <xsl:template match="z:row">
<Entity ID="{@ID}" ATA="{@ATA_CODE}" Name="{@NAME}" Code="{@CODE}" Source="{@SOURCE}" Ident="{@IDENT}" Level="{@OBS_LEVEL}" EffNote="{@HAS_EFF_NOTE}" Score="{@SCORE}" />
</xsl:template>
</xsl:stylesheet>
AND I NEED OUTPUT XML AS:-
<Entities Count="3">
<Entity ID="1018" ATA="32-43" Name="ALT BRK - LOSS OF THE PEDAL ARTIFICIAL FEEL ON THE RIGHT SIDE" Code="OBSV" Source="" Ident="" Level="" EffNote="0" Score="1"></Entity>
<Entity ID="1017" ATA="32-43" Name="ALT BRK - LOSS OF THE PEDAL ARTIFICIAL FEEL ON THE LEFT SIDE" Code="OBSV" Source="" Ident="" Level="" EffNote="0" Score="1"></Entity>
<Entity ID="100" ATA="32-44" Name="ACCU PRESS DROPS VERY QUICKLY PARKING BRAKE OFF" Code="LOCAL" Source="" Ident="" Level="INDICATOR(S)" EffNote="0" Score="1"></Entity>
</Entities>
how to write a bean to get this xmloutput.
thank in advanceHi Sliba,
You may download and use the XDK for Java that is available from OTN to do this.
Here is the code that will be handy for use. Just substitute your XML document and stylesheet
in the code snippet pasted below. I hope this helps.
There are many more useful XML samples you can find at http://otn.oracle.com/sample_code/tech/xml/content.html
Regards
Abhijeet
// import the necessary libraries
import oracle.xml.parser.v2.XSLProcessor;
import oracle.xml.parser.v2.XSLStylesheet;
import oracle.xml.parser.v2.XMLDocument;
import oracle.xml.parser.v2.DOMParser;
import java.io.StringReader;
public class Test
public Test()
// Xml document that needs to be transformed
private static String xmldoc = "<xml xmlns:s=\"http:www.myschema.com\" >" +
"<s:result>" +
"<s:status>1234554321</s:status>"+
"<s:approvalcode>1234567887654321</s:approvalcode> "+
"</s:result>" +
"</xml>";
// Xsl stylesheet that will be applied
private static String xsldoc ="<xsl:stylesheet version=\"1.0\" xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" xmlns:s=\"http:www.myschema.com\" > " +
" <xsl:template match=\"s:result\"> "+
" My transform status: <xsl:value-of select=\"s:status\"/> <BR/>" +
" My transform Approval code : <xsl:value-of select=\"s:approvalcode\"/> " +
"</xsl:template> " +
"</xsl:stylesheet> ";
public void transform(String xmlstr,String xslstr) throws Exception {
// Create the DOM parser instance
DOMParser dp = new DOMParser();
// Create StringReader object
StringReader xmlreader = new StringReader(xmlstr);
// Parse the xml document string
dp.parse(xmlreader);
// Get java object representation of XML document
XMLDocument xmldoc = dp.getDocument();
// Create an instance of XSL processor
XSLProcessor processor = new XSLProcessor();
// Create StringReader object
StringReader xslreader = new StringReader(xslstr);
// Parse the xsl stylesheet
XSLStylesheet xsl = processor.newXSLStylesheet(xslreader);
processor.showWarnings(true);
processor.setErrorStream(System.err);
processor.processXSL(xsl,xmldoc,System.out);
return;
public static void main(String[] args) throws Exception
Test test = new Test();
System.out.println("Executing test");
test.transform(xmldoc,xsldoc);
}
Maybe you are looking for
-
To change my Home Page, Firefox wont accept the change. Instead there seems to be a default home page, that is, mywebsearch.com
-
How to Pre-Select a View for ALV dashboard at runtime
Hello Experts, The requirement is to pre-select 1 view initially (out of several configured) for 'All' users and disable the 'View-selection' dropdown function in a standard ALV dashboard. So whenever the dashboard loads, a particular view has to be
-
Dear all. Reading SAP documentations about the "Waste Management" EHS module, and also checking documents from companies which have already implemented it, I don't see many explanations about how it's done the "Delivery" and "Transport" of the waste.
-
How do I update my iPad to ios5?
How do I update my iPad to ios5?
-
BED change in capture excise(J1IEX)-value moved from Inventorized duty to Credit available
Dear Friends, Scheduling Agreement has a material which is subject to non-setoff JMIP(inventorized). WhileGR(105) posting, excise is only captured. When Excise number is checked in J1IEX, excise inventory value is displayed under Duty Values tab and