JavaBean调用dll问题
大家好,首先谢谢你能关注该帖子,我现在遇到一个大问题需请求大家
我写了一个C++的dll,名称是Java2Com.dll,包含JavaBridgeCom.h和Java2Com.cpp两个文件,JavaBridgeCom.h是由JavaBridgeCom.java生成的jni头文件
======================================
JavaBridgeCom.h源代码如下:
/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class JavaBridgeCom */
#ifndef _Included_JavaBridgeCom
#define _Included_JavaBridgeCom
#ifdef __cplusplus
extern "C " {
#endif
/*
* Class: JavaBridgeCom
* Method: Encode
* Signature: (Ljava/lang/String;JIZLjava/lang/String;I)I
, jstring, jlong, jint, jboolean, jstring, jint
*/
JNIEXPORT jint JNICALL Java_JavaBridgeCom_Encode
(JNIEnv *, jclass);
#ifdef __cplusplus
}
#endif
#endif
=============================================
Java2Com.cpp源代码如下:
#include "JavaBridgeCom.h "
#include <windows.h>
//, jstring, jlong, jint, jboolean, jstring, jint
JNIEXPORT jint JNICALL Java_JavaBridgeCom_Encode
(JNIEnv *, jclass)
{
printf( "inter JavaCOM success!\n ");
MessageBox(NULL, "Method05(INT intPro) Help, 你好xxxxxx ", "提示信息 ", MB_OK);
return 0;
}
=============================================
然后我写了一个java类(名称是JavaBridgeCom.java)调用Java2Com.dll
代码如下:
public class JavaBridgeCom {
static {
System.loadLibrary( "Java2Com ");
}
public native static int Encode();
public static void main(String[] args) {
int c_return_one;
JavaBridgeCom xiang = new JavaBridgeCom();
c_return_one = xiang.Encode();
}
调用成功!!!!
=========================
在JavaBean调用Java2Com.dll就不行,调研方式是Jsp通过JavaBean调用Java2Com.dll
JavaBean名称为:JavaBridgeComBean.java
package bean;
import java.io.*;
import java.lang.String;
public class JavaBridgeComBean
{
public JavaBridgeCom(){}
private static JavaBridgeComBean javabridgecom;
static
{
System.loadLibrary( "Java2Com ");
}
public native static int Encode();
public void InvokeCEncode()
{
int c_return_one;
javabridgecom = new JavaBridgeComBean();
c_return_one = javabridgecom.Encode();
}
}
=============================================
然后我写了一个Jsp页面调用这个JavaBean即JavaBridgeComBean.java
JspInvokeBean.jsp页面源代码如下:
<%@ page contentTy