`
文章列表
为了解决博客Jstack -F 参数在低版本的问题,必须重新编译自己的jdk,按着java里面自带的build的文档,基本就傻眼了,没想到作为开源之首的java,编译自己的jdk的文档尽然如此陈旧,不得已还是自己摸石子过河吧。 1. 下载源码 ,直接去oracle 的官方网站:http://download.java.net/jdk6/source/ 注意你要下载2个jar JDK 6u23 Source under the JRL license jdk-6u23-fcs-src-b05-jrl-12_nov_2010.jar,136.53 MB (MD5 Checksum) ( ...
当使用jmap,jstack是用-F参数的时候,是通过调用系统调用ptrace来取的寄存器的信息,关于linux下的ptrace实现可以参考我的博客(http://blog.csdn.net/raintungli/article/details/6563867) 在jdk6u23版本之前你会发现,当你使用jstack -F的时候 经常在logger 里面 看到错误信息,直接抛出异常,根本无法看到堆栈信息。 Thread 26724: (state = BLOCKED) Error occurred during stack walking: sun.jvm.hotspot.debugge ...
前言: 在今天的学习中,我们讲开始过渡到一个真正的websecurity例子。 第二天中我们知道了如何使用handler来处理客户端提交上来的用户名与密码,而在今天的学习中,我们将会使用服务端预先配置的用户名与密码来authenticate客户端提交上来的值。 相对于第二天的学习,如果客户端提交的用户名与密码输错,但还是能够与服务端建立http连接来说,第三天中的例子的安全性则更高,当客户端提交上来的用户名与密码错误则更本不可能和服务端建立起有效的http连接。该例子同时适用于一切J2EE AppServer,比如说:IBMWAS, ORACLE WEBLOGIC。 同时,通过该例子将讲 ...
前言: 第一天里说了如何用jax-ws去结合ssh框架。 在今天的教程中将会向大家详细讲述一个ws-security中的一个传统的”基于handler”来认证客户端传来的用户名密码的webservice. 客户端传过来一对用户名和密码,服务端进行认证。 当然,我们此处说这个用户名和密码的传送,那可不是用下面的这种形式来传送的哦: http://xxx.do?username=xxx&password=xxx。 我们这个用户名和密码是带在soap报文中的, jax-ws用一个handler专门用于处理soap报文的。 一、书写Handler 1. 1 handler类 ...
前言: 在前面的“5天学会jaxws-webservice教程”,我们讲了基本的jax-ws的使用。 Jax-ws是业界公认的标准的webservice,它已经成为了一个行业界标准,包括cxf,其实cxf也是调用的jax-ws为标准的基于spring的webservice框架。 同时,大家都知道世界上除了j2ee体系外,还存在.net体系,同时有过相关经验的同事们也知道用ws-security无非就是涉及到“加密”,“解密”,而JAVA的x509所涉及到的证书,公钥,私钥与.net体系之间是无法通用的。 但是webservice是因该属于无所谓语言的一个标准,因此为了让j2ee的webs ...
前言: 在第四天时了解了用jaxws如何去传输一个二进制文件,今天我们将讲述用Client上传一个Java复杂类型,该复杂类型中有一个字段叫myPhoto,为一个jpg/gif附件,服务端接受该上传的复杂类型,并把其中的二进制字段中的图片保存至本地。 对于我们来说,传输诸如下面这样一种的数据结构更符合企业级webservice的应用。 客户ID: XXXX 客户名: XXXX 客户靓照: 目标: 1. 客户端用Webservice上传一个带有二进制附件的java复杂类型,服务端收到客户端request后把java ...
前言: 从今天开始,我们将学习如何使用Webservice进行二进制附件的传输,这一课题将分成两个部分: l 第一部分实现Client上传一个附件到服务端,服务端接收Client传过来的二进制附件后保存至本地。 第二部分实现Client上传一个Java复杂类型,该复杂类型中有一个字段叫myPhoto,为一个jpg/gif附件,服务端接受该上传的复杂类型,并把其中的二进制字段中的图片保存至本地。 以下是我们要存取的图片(搞笑一下啊) 目标: 1. 客户端用Webservice上传一个二进制文件,服务端收到客户端request后把二进制附件读出,保存至本地 一、编写Serv ...
前言: 在第二天的学习中,我们了解了jaxws如何返回一个List<String>类型的相对复杂的java数据类型给客户端,在今天,我们将更深入一步做一个真正的Java复杂类型的Webservice的传输调用。 目标: 1. 用Webservice调用和返回Java的复杂类型(比如说:List<Student>这样的数据) 一、编写Server端 1.1制作JAVA BEAN-Person对象 这次我们将返回一个List<Person>类型给客户端。 先来制作我们的Person类,代码如下: package ctsjavacoe.ws ...
第二天 前言: 大家都知道,仅仅输入或者返回一个简单型的String, Int在实际工作中没有太大的意义。很多时候我们的Service需要返回类似于List<Person>,List<String>这样的数据结构。 我们现在就一起来看用Jaxws怎么实现。 目标: 1. 用Webservice调用和返回Java的复杂类型(比如说:List<Student>这样的数据) 一、编写Server端 1.1先对jaxws返回List类型做一个简单的POC 在正式做我们的复杂类型返回前,我们先做一个试验来证明jaxws能否返回复杂类型即Colle ...
前言: 随着近几年来,SOA,EAI等架构体系的日渐成熟,Webservice越来越炽手可热,尤其是在企业做异质平台整合时成为了首选的技术。 Java的Webservice技术更是层出不穷,比较流行的有: Axis2,Spring WS以及Jaxws。 本人在日常工作 ...
linux 的线程和信号 基于 NPTL 的线程库,多线程应用中的每个线程有自己独特的线程 ID,并共享同一个进程ID。应用程序可以通过调用 kill(getpid(),signo) 将信号发送到进程,如果进程中当前正在执行的线程没有阻碍此信号,则会被中断,线号处理函数会在此线程的上下文背景中执行。应用程序也可以通过调用 pthread_kill(pthread_t thread, int sig)将信号发送给指定的线程,则线号处理函数会在此指定线程的上下文背景中执行。 java里信号掩码的集合 unblocked_sigs SIGILL SIGSEGV SIGB ...
safe point 顾明思意,就是安全点,当需要jvm做一些操作的时候,需要把当前正在运行的线程进入一个安全点的状态(也可以说停止状态),这样才能做一些安全的操作,比如线程的dump,堆栈的信息。 在jvm里面通常vm_thread(我们 ...
Java中初始是使用mutex互斥锁,因为互斥锁是会线程等待挂起,而对获取锁后的操作时间比较短暂的应用场景来说,这样的锁会让竞争锁的线程不停的park,unpark 的操作,这样的系统的调用性能是非常糟糕的,为了提高锁的性能,java 在6 默认使用了自旋锁。 在Linux中本身就已经提供了自旋锁的系统调用,在glibc-2.9中就有它的比较简单的实现方法 int pthread_spin_lock (lock) pthread_spinlock_t *lock; { asm ("\n" "1:\t" LOCK_PREFIX "dec ...
早上起来想要下载东西,结果出现“无法解析或打开软件包的列表或是状态文件”的错误,具体信息是: 初始化包信息时遇到无法解决的问题。请汇报这个“update-manager”软件包的错误,并且将如下信息包含在报告中:'E:Encountered a section with no Package: header, E:Problem with MergeList /var/lib/apt/lists/archive.canonical.com_dists_maverick_partner_binary-i386_Packages, E:无法解析或打开软件包的列表或是状态文件。' 原因 ...
在前面的博客中(http://blog.csdn.net/raintungli/article/details/7034005)所提到的信号转发线程,Attach Listener 线程都只是操作socket文件,并没有去执行比如stack 分析,或者heap的分析,真正的工作线程其实是vm thread. (一)启动vm thread jint Threads::create_vm(JavaVMInitArgs* args, bool* canTryAgain) { ... // Create the VMThread { TraceTime timer("Star ...
Global site tag (gtag.js) - Google Analytics