Mac下使用Apache TCPMon


参考链接:

TCPMon Tutorial

Anyone know how to get TCPMON working on a mac?

Apache TCPMon

是一个开源的检查TCP网络数据流的调试工具。TCPMon处在客户端(消费者)和服务器之间,客户端与TCPMon连接,然后TCPMon将数据发送给服务器,并将数据显示到它的客户端显示。

Apache TCPMon 的下载地址:

http://archive.apache.org/dist/ws/tcpmon/1.0/

注意 只是一个与code.google.com上不同的TCPMon

下面是一个坑

如果按照Apache或者网上很多链接里面搜索到的使用方法,在mac下直接运行

	build/tcpmon.sh

然后会得到系统反馈

	-bash: build/tcpmon.sh: Permission denied

即使修改文件权限

	sudo chmod 755 'build/tcpmon.sh'

仍然会得到一个运行错误说找不到“TCPMon”

	Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/ws/commons/tcpmon/TCPMon
Caused by: java.lang.ClassNotFoundException: org.apache.ws.commons.tcpmon.TCPMon
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

如果尝试通过java运行

	$ java -jar tcpmon-1.0.jar
Failed to load Main-Class manifest attribute from tcpmon-1.0.jar

所以这里的jar包打的有问题,我们需要重新生成这个jar

apache.org上下载tcpmon-1.0.src.zip,然后用Eclipse工程打开重新生成新的jar(我这里用的是JDK7)

第一步

新建一个工程并将src里面的java代码引入

第二步

右件选择项目然后Properties -> Export

第三步

选择Runnable JAR file并生成tcpmon-1.0-fixed.jar

第四步

我们可以双击运行tcpmon-1.0-fixed.jar

坑结束

使用Apache TCPMon

如下图中

  • “Listen Port # 9000”,是客户端连接TCPMon的端口号

      client.setServiceClass(HelloWorld.class);
    client.setAddress("http://localhost:9001/cxf/services/HelloService");
    HelloWorld helloworld = (HelloWorld) client.create();
    System.out.println(helloworld.sayHi("Richard"));
  • “Target Hostname 127.0.0.1”,是本地IP

  • “Target Port # 8080”,通常是本地Tomcat启动端口

Mac下使用Apache TCPMon的更多相关文章

  1. 【高可用HA】Apache (1) —— Mac下安装Apache Httpd到自定义路径(非/etc/apache2)

    Mac下安装Apache Httpd httpd版本: httpd-2.4.17 参考来源: Tomcat Clustering - A Step By Step Guide Apache HTTP ...

  2. mac下为Apache 创建 .htaccess文件

    标签:mac   .htaccess 在设置固定链接时会提示如下的问题:   若您的 .htaccess 文件可写,我们可以自动修改它.但似乎它不可写,因此我们在下方列出了您 .htaccess 文件 ...

  3. Mac下配置Apache Httpd的Https/SSL

    Mac下配置Apache Httpd的Https/SSL httpd版本: httpd-2.4.17 jdk版本: jdk1.8.0_65 参考来源: Mac下安装Apache Httpd Mac O ...

  4. Mac 下搭建 Apache 服务器

    Apache作为最流行的Web服务器端软件之一,它的优点与地位不言而喻.下面介绍下在Mac下搭建Apache服务器的步骤: (1)“前往” –>”个人” (2)在你的个人目录下新建一个文件夹,改 ...

  5. 【高可用HA】Apache (4) —— Mac下配置Apache Httpd负载均衡(Load Balancer)之mod_jk

    Mac下配置Apache Httpd负载均衡(Load Balancer)之mod_jk httpd版本: httpd-2.4.17 jk版本: tomcat-connectors-1.2.41 参考 ...

  6. 【高可用HA】Apache (3) —— Mac下配置Apache Httpd负载均衡(Load Balancer)之mod_proxy

    Mac下配置Apache Httpd负载均衡(Load Balancer)之mod_proxy httpd版本: httpd-2.4.17 参考来源: Apache (1) -- Mac下安装Apac ...

  7. Mac下配置Apache服务

    这篇文章主要是针对Mac用户,第一次搭建本地开发环境的同学,已经搭建过的同学可以忽略. Mac自带的Apache还是XAMPP? That is a question. 其实自带的apache也够用了 ...

  8. Mac下配置apache

    一.前言 今天遇到问题,怎么配置apache在Mac上,原来Mac自带apache,只需要自己开启配置一下就行了. 二.步骤: 1.修改apache的http_conf文件 打开finder前往/pr ...

  9. Mac下PHP+Apache+MySQL环境搭建

    一.启动Apache 有两种方法 1.打开网络共享 打开"系统偏好设置"->"共享",在"互联网共享"那一项前面打√. 2.打开终端, ...

随机推荐

  1. GetProperties(BindingFlags)说明

    Instance|Public:获取公共的的实例属性(非静态的) Instance|NonPublic:获取非公共的的实例属性(非静态的).(private/protect/internal) Sta ...

  2. AngularJs记录学习02

    <!doctype html> <html ng-app="myapp"> <head> <meta http-equiv="C ...

  3. linux 使用 pyodbc 访问 ms sqlserver 数据库

    一.安装linux下Sqlserver的驱动程序: 我们先来安装SqlServer的驱动程序,再安装ODBC相关的,目的是想尽快可以进行测试,因为在安装完Freetds之后,我们马上就可以在linux ...

  4. apache 403错

    <Directory />Options FollowSymLinksAllowOverride NoneOrder deny,allowAllow from all</Direct ...

  5. 普通委托到泛型委托到Linq

    private delegate bool delTest(int a); private void button1_Click(object sender, EventArgs e) { var a ...

  6. bat文件编写(无线承载网络设置)

    就弄个例子,自己看执行效果,然后模仿写就行. 1)获取当前时间: @echo off set YEAR=%date:~0,4% set MONTH=%date:~5,2% set DAY=%date: ...

  7. Douglas Crockford: entityify & deentityify

    大神之字符与字符实体的相互转换方法 // & to & if (!String.prototype.entityify) { String.prototype.entityify = ...

  8. IOS之表视图单元格删除、移动及插入

    1.实现单元格的删除,实现效果如下 - (void)viewDidLoad { [super viewDidLoad]; //设置导航栏 self.editButtonItem.title = @&q ...

  9. 关于ios极光推送server端注意的地方

    今天试用了极光推送API 用它是因为,大多数人说它的文档是最全的,但是用过之后,发现关于IOS的文档,还是很不够,导致走了一点弯路! 特别是服务端的代码:https://github.com/jpus ...

  10. GNU make 总结 (三)

    一.makefile 变量 makefile中的变量名是大小写敏感的,例如”foo”和”Foo”是两个不同的变量.通常情况下,对于一般变量,我们可以使用小写形式,而对于参数变量,采用全大写形式.当我们 ...