月蚀传说

浮躁让人失去理智
posts - 25, comments - 101, trackbacks - 0, articles - 0
  BlogJava :: 首页 ::  :: 联系 :: 聚合  :: 管理

我的评论

你要这么一说我真有点不好意思了,不想写的所谓原因可能我是在找借口吧,主要还是我太懒了-____,-

如果需要我会立即动手写新的文章,或者可以一起讨论一下。不过我更希望你能关注一下JBoss VTP。

我的email:black_frezee@163.com
to 76814055 :

不会再有续了,没多少人关注这个,我也不想写了,你可以看看文章第一次post的时间,再看看回复数量就知道我的心情了,哇凉哇凉的。

不过如果你有兴趣可以关注另外一个Web图形编辑器:JBoss VTP,这个可比WTP的要好很多。
re: 翻弹Vinnie Moore的Rain Dart 2008-03-17 19:55  
patch level : 25
COMP LIMIT WAH : L8
DIST : LD
GAIN:30
EQ:40
CONTOUR:0
ZNR/AMP:6
MOD:PU
DLY/REV:D5
TIME:33
re: 翻弹Vinnie Moore的Rain Dart 2008-03-11 17:15  
TO celebrain:

效果器是大众玩具505II,需要参数的话请留言
re: 浅谈SCA Dart 2007-10-31 13:28  
To yihong:

我很久没有更新blog了,我的SCA Container也已经1年没有更新代码了。我也放松了对技术方面的学习,这可能就是我这个人最大的弱点吧。不过谢谢你的提醒,我想我会重新拾起这些久违的东西。


我胡乱回答一下你的问题:
1:所谓服务就是提供一定功能的实体,提供服务的实体我们可以称之为服务提供者,是这样吧?SCA中,将模型划分成几个不同粒度,其实我觉得都可以看成服务提供者,但是他们的粒度不一样。我觉得Component可能是最小的服务粒度。在0.9中,对外提供服务的话需要使用Composite。你所说的domain应该是从0.96后的版本加入的吧,我觉得它也是服务提供者。SCA把这些同为服务提供者的模型分正这几类粒度,可能是从SOA设计角色考虑出发的——设计人员和开发人员考虑的角度是不一样的。
2:WebService在sca中被称为一个binding,它利用协议绑定的形式进行描述,而进行访问的时候,我们根本就不需要知道它是不是web服务,因为我们都是通过domain去查找出服务代理,然后调用方法的。那在调用过程中,具体如何调用(WebService?JMS?),服务消费者(调用服务的人)是不知道的。
3:你提到了IBM的Mediation module。我也看过那篇文章,不是很懂。我觉得SCA本身就具备ESB的一些功能,它们两者之间有很懂相似的地方。有时候我会把SCA看成一个ESB的实现。如果要加入已有的ESB的话,我想可以通过扩展SCA的Binding来做到这一点吧。
4:对于组件打包这个问题我一点都不知道了,不能回答你了。
5:我觉得SCA应该是囊括了组件层、服务层、业务流程层。组件层可以看成已经发布的Domain或者一些其他的可以利用SCA访问的可用功能组件;服务层就不说了(服务无处不在);业务流程层应该说是BPEL吧,那应该在SCA对应的是BPEL implement 才对,所以说这些所谓“层”对应到SCA模型是不能直接连线的。其实可以这么看,服务层和组建层做为原子业务功能的提供层,业务流程层则是组合这些原子功能的地方。
7:SCA是一种设计,开发的模型指导方案,WebService可以看成组成SCA的一个技术部分。
8:这个我倒无所谓,只是需要明确:SOA是方法论,SCA是一种技术规范。
re: 浅谈SCA Dart 2007-09-03 15:14  
to jackyrong:

从什么角度入手去开发一个SOA构架的应用的确是个难题。
我记得IBM的一次SOA会议上提到过,其实做SOA的可以从多个方面入手,一共有好几个方面,我只记得以下2点:
1.从数据入手

基本上就是有点像数据整合的感觉——将异构应用的数据进行整合同步。目前国
内有不少公司做这样的产品,比如东方通的TI在数据同步方面就很强。

2.从连接入手
将一些应用的接口进行抽取,然后利用SCA的标准进行封装(或者直接利用WebServices进行封装),对外发布后提供给其他应用调用。

还有就是你所提到使用ESB,这点上我觉得其实如果你使用SCA来做的话,ESB是不是可以取消掉呢?

上面是我一些不成熟的看法,希望对你有所帮助
to 尘封:
其实没有必要再做两个Cell出来,我也常遇到这种问题,我来说说我的解决办法

首先要认定Subjuect维护了两个List,一个是存放了opt,一个是存放了Attr.
那可以将这两个List看成是Subject的childrenModel,也就是说Subject只维护了两个List而已,所以在Subject的EditPart中返回childrenModel的时候只需要将这两个list放在一个List中返回.

这样一来,在GEF通过EditPartFactory查找模型对应的Editpart时,就会出现两个List的模型,这是没有办法分清的.
我的做法是:使用EMF提供的List,因为这种list是可以携带其包含的元素的类型信息的;
或者是自己写一个List,让它携带一些标记信息来区分哪个是维护opt的,哪个是维护Attr的:

public MyList extends ArrayList implements List{
private Class elementClazz;

public Class getElementClass(){};
public void setElementClass(Class clazz){
..
}
}

当然,如果你使用的是JDK5.0的话,可以这么定义: ArrayList<elementClass>,这也可以取得元素类型.

再就是在确保List中有数据的时候随便其一个出来看看类型也行.

这两个List对应的EditPart就很简单了,就连figure也可以是简单的透明Rectangle.

上述方法虽然类似你的说的Cell的那种方案,但是你的模型就可以进行少量的更改
TO amendar:
Figure是可以进行绘制图片的,使用graphics类的drawImage即可
re: GEF简介 Dart 2007-03-16 09:14  
哎,现在我才发现我的这篇文章漏洞百出,希望各位读者多指出错误,并且仅以此文章作为参考,文章上的一些说法并非完全正确,特此声明
re: 能够拖动的矩形 Dart 2007-03-14 13:01  
3.2可能跑不起来,我没试过
re: 能够拖动的矩形 Dart 2007-03-13 17:16  
先确认,你用的Eclipse和GEF是什么版本的,这篇文章写得比较老了,Eclipse版本应该是3.0.1,GEF版本也应该是对应当时Eclipse版本的.
代码应该不会有问题,因为在这篇文章还没有丢失之前很多人都已经用过了
to 张如忠:

Binding的信息是在设计阶段写出来的,而且我的理解可能有错误,Binding的port在SCA规范中说是NameSpace+#wsdl.endpoing,而我直接作为一个WSDL URL路径使用了,所以我这种方法不一定正确。况且SCA还有专门的“部署”描述,我想很多和节点地址有关的信息(比如你所提到的)应该是在部署阶段才真正给出来的。
FansOne不够意思,抢个沙发就走人了
re: 我与公司共成长 Dart 2006-10-21 12:56  
呵呵,祝福楼主和楼主的公司!
感谢楼主提供的PDF,在这里我45度角仰视楼主!谢谢!
re: 探讨EAI中的应用连接 Dart 2006-10-09 18:08  
EAI中不一定非要应用系统提供数据接受的接口,因为很多是物理数据。通过一些监视数据改变(JCA)就可以做到数据变更触发,然后直接改系统的物理数据。
re: 工作后才知道(转) Dart 2006-10-09 14:08  
I lie awake on a long, dark night
I can't seem to tame my mind
Slings and arrows are killing me inside
Maybe I can't accept the life that's mine
No,maybe I can't accept the life that's mine
re: 胡言乱语谈SCA Dart 2006-10-07 13:23  
这都是瞎说的,大家就当故事看好了。哈哈
re: 浅谈SCA Dart 2006-10-07 11:54  
TO pear:

关于“主要用Web Service实现的实际系统”我不太明白是什么意思,我猜你是想知道WS主要应用吧?如果是那样我认为你可以好好看看Developworks上的文章,对你有帮助

另外,我的这篇文章还是写得太虚,没有给大家比较直观的认识。等我完成了我的SCA容器(Balto)后一定会将官方的BigBank完成,展示一下SCA的战斗力。

技术不是游戏,技术不是拿来玩的,技术的存在一定是要解决当前的存在的生产生活问题的。千万不要认为技术学了没用,学了就一定有用;但是也不要盲目追捧技术

TO BlueDavy:

SCA目前还不完善,很难说以后会是什么样,而且它存在的目的其实很明确:在现在天天呼唤SOA的这样一个历史时期中,几个大厂商推标准,然后其他公司追赶,最后设计成,为以这几家大公司现有产品整合为主的框架也说不定。

SCA是否真能到达“设计开发SOA化”这就很难说了,这需要设计开发人员自身对SOA的理解,不过让SCA达到"设计标准化"还是容易的。

我对OSGi不熟悉,不过由于长期从事Eclipse Plugins开发,多少知道一些。我觉得OSGi中那中“既插既拔”的module管理思路和SCA中的以Module为主要单元的设计还不太一样,OSGi更偏重于对接入模块的动态管理,并不整合它们;SCA则是更加偏重对Module(Composite)之间的交互。

有不对的地方还请多多指教
回 aju:

SCA是一套完整的SOA实现框架,目前版本是0.9,还在进一步完善当中,它是一个能让“SOA落地”的框架。

IoC依赖注入是从程序设计着眼,它将实现了和接口分开,实现了松耦合。同样,SCA在某些实现采用这种方式(或者说是模式)——其实并不只是SCA框架,很多框架也都采用了IoC的思想。就是说,IoC在SCA中是被采用的技术思想之一。

本人的几篇随笔里,只是讲了SCA最基本的功能。本人的文笔较烂,再加上我对SCA的理解还不够深入,无法让读者理解其真正的用途所在,在这里我自我检讨一下,过几天我会写一篇关于如何使用SCA(SOA)进行项目开发的短文,希望能讲SCA出现的用意说明白。
@guangqing

你定义的那个服务在我实现的容器中应该没什么问题吧,不过我传上去的例子中,对定义重复的服务没有检测
@guangqing


Apache的那个项目我看了下,它有C++的实现,并且对于SCA0.9中和EJB,JCA,Spring之间好像都有整合,但是参考它的代码话可能会很费时间,还是自己写吧,呵呵
又一个Eclipse Programmer
欢迎加入我们的社区: www.eclipseworld.org
好文章!一直以来,我都是传递View本身对象来实现事件监听,原来利用SelectionService中转可以实现啊。
谢谢楼主的文章!