SoapUI调用自写Jar包

soapui能够使用groovy脚本,脚本中可以调用自己编写的jar包,使用中会遇到一些问题,下面进行一些记录


soapui调用自写jar包

  • 1、编写jar代码并调试测试成功
  • 2、打包jar包
    •   eclipse中鼠标右键到需要打包的项目-Export-Java-JAR file-Next-选中项目下manifest.mf文件和需要打包的方法-指定jar包存储路径和jar包名称-Finish
  • 3、拷贝jar到指定soapui路径
    •   * \SoapUI-Pro-5.1.2\bin\ext\ *为soapui安装路径
  • 4、重启soapui
  • 5、引用jar
    •   import md5_jar.md5Jar; 具体引用为包名+类名
  • 6、声明引用jar包对象
    •   def md5jar =new md5Jar(); 声明为类对象
  • 7、调用对象
    •   String hashFromContent = md5jar.md5_sec(signSource); 直接调用并赋值,没啥说的了


走过的坑
1、jar打包问题
打包时需要增加manifest.mf文件,若没有指定,则会提示找不到主类清单
文件内容格式为:
Manifest-Version: 1.0
Main-Class: md5_jar.md5Jar
其中Main-Class:为打包好提供给外部使用的方法
如下:

 

2、groovy调用问题
groovy调用时需要引入包(即import)并声明引用方法对象(如:def md5jar =new md5Jar();)
示例:

 1 import md5_jar.md5Jar;
 2 def md5jar =new md5Jar();
 3 String hashFromContent = md5jar.md5_sec(signSource);
 4 
 5 md5加密包装jar编写示例:
 6 package md5_jar;
 7 
 8 import java.io.UnsupportedEncodingException;
 9 import java.math.BigInteger;
10 import java.security.*;
11 
12 public class md5Jar {
13     public static String md5_sec(String signSource) throws NoSuchAlgorithmException, UnsupportedEncodingException {
14         System.out.println("加密前输出:"+signSource);
15         MessageDigest md5 = MessageDigest.getInstance("MD5");
16         md5.update(signSource.getBytes("UTF-8"));
17         BigInteger hash = new BigInteger(1, md5.digest());
18         String hashFromContent = hash.toString(16);
19         for (int i = 32 - hashFromContent.length(); i > 0; i--) {
20             hashFromContent = "0" + hashFromContent;
21         }
22         return hashFromContent;
23     }
24 
25 }

 

posted @ 2017-09-28 12:04  秦一尘  阅读(1250)  评论(0编辑  收藏  举报