﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-xiaoxiaoleemin</title><link>http://www.blogjava.net/xiaoxiaoleemin/</link><description>天道酬勤，小小加油</description><language>zh-cn</language><lastBuildDate>Sat, 18 Apr 2026 03:58:16 GMT</lastBuildDate><pubDate>Sat, 18 Apr 2026 03:58:16 GMT</pubDate><ttl>60</ttl><item><title>CVS添加用户的命令</title><link>http://www.blogjava.net/xiaoxiaoleemin/archive/2008/11/18/241150.html</link><dc:creator>xiaoxiaoleemin</dc:creator><author>xiaoxiaoleemin</author><pubDate>Tue, 18 Nov 2008 07:17:00 GMT</pubDate><guid>http://www.blogjava.net/xiaoxiaoleemin/archive/2008/11/18/241150.html</guid><wfw:comment>http://www.blogjava.net/xiaoxiaoleemin/comments/241150.html</wfw:comment><comments>http://www.blogjava.net/xiaoxiaoleemin/archive/2008/11/18/241150.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/xiaoxiaoleemin/comments/commentRss/241150.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/xiaoxiaoleemin/services/trackbacks/241150.html</trackback:ping><description><![CDATA[1. 在Windows XP上安装<span id="Mark" style="color: #ee6600; background-color: yellow">CVS</span>服务器端，cvsnt<br />
2. 在命令行窗口中首先登录<span id="Mark" style="color: #ee6600; background-color: yellow">cvs</span>，命令如下：<br />
&nbsp;&nbsp;&nbsp; <span id="Mark" style="color: #ee6600; background-color: yellow">cvs</span> <span id="Mark" style="color: blue; background-color: #ccffff">-d</span> <span id="Mark" style="color: red; background-color: #ffeeee">:pserver:administrator@127.0.0.1:/mycvs</span> <span id="Mark" style="color: #ff0099; background-color: #fff0ff">login</span>&nbsp; 注：这里要用自己操作系统的管理员用户代替administrator<br />
3: 添加用户<br />
&nbsp;&nbsp;&nbsp;&nbsp;<span id="Mark" style="color: #ee6600; background-color: yellow">cvs</span> <span id="Mark" style="color: blue; background-color: #ccffff">-d</span> <span id="Mark" style="color: red; background-color: #ffeeee">:pserver:administrator@127.0.0.1:/mycvs</span> passwd -a zyx<br />
&nbsp;&nbsp;&nbsp; 这样就创建了用户名为zyx的账户，此时在<span id="Mark" style="color: #ee6600; background-color: yellow">cvs</span>的安装目录下会生成一个passwd文件，里边存储着用户名和经过linux加密后的密码。这时候如果用命令<span id="Mark" style="color: #ee6600; background-color: yellow">cvs</span> <span id="Mark" style="color: blue; background-color: #ccffff">-d</span> :pserver:zyx@127.0.0.1:/mycvs <span id="Mark" style="color: #ff0099; background-color: #fff0ff">login</span>&nbsp; 登录系统，可能会提示zyx是无效的用户（在有的机器上这时用户就成功创建不会提示无效用户，后面这条命令也就无需执行，暂且不知道为何不同的机器有这种差异），需要再执行如下命令将该用户与操作系统用户绑定：<br />
&nbsp;4：<span id="Mark" style="color: #ee6600; background-color: yellow">cvs</span> <span id="Mark" style="color: blue; background-color: #ccffff">-d</span> <span id="Mark" style="color: red; background-color: #ffeeee">:pserver:administrator@127.0.0.1:/mycvs</span> passwd -r zyinxin(操作系统用户名) -a zyx　<br />
&nbsp;&nbsp;&nbsp; 这时passwd文件中的记录变为zyc:***(加密的密码): zyinxin(zyc用户的别名)<br />
<br />
现在客户端可以用zyc用户来share project了。<br />
&nbsp;<br />
到这里又出现了另外一个问题，用zyc来share project以后，在服务器所在的机器上可以通过import from CVS repository来导入项目，但是在 其它机器上就提示Connection failed或者connection time out的错误。这是由于服务器端的防火墙的原因，在控制面板-&gt;安全中心-&gt;例外中，为端口2401，2402关闭防火墙即可。
<img src ="http://www.blogjava.net/xiaoxiaoleemin/aggbug/241150.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/xiaoxiaoleemin/" target="_blank">xiaoxiaoleemin</a> 2008-11-18 15:17 <a href="http://www.blogjava.net/xiaoxiaoleemin/archive/2008/11/18/241150.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>修改IP,DNS等网络设置的脚本</title><link>http://www.blogjava.net/xiaoxiaoleemin/archive/2008/10/16/234692.html</link><dc:creator>xiaoxiaoleemin</dc:creator><author>xiaoxiaoleemin</author><pubDate>Thu, 16 Oct 2008 05:53:00 GMT</pubDate><guid>http://www.blogjava.net/xiaoxiaoleemin/archive/2008/10/16/234692.html</guid><wfw:comment>http://www.blogjava.net/xiaoxiaoleemin/comments/234692.html</wfw:comment><comments>http://www.blogjava.net/xiaoxiaoleemin/archive/2008/10/16/234692.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/xiaoxiaoleemin/comments/commentRss/234692.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/xiaoxiaoleemin/services/trackbacks/234692.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 本本白天在公司上网，晚上回家上网，本地连接的设置如果总是手工进行，很麻烦，可以分别写两个bat脚本，上网前分别执行以下就可自动设置。<br />
<br />
netsh interface ip set address name = "本地连接" source= static addr=<span style="color: #0000ff">IP地址</span> mask=<span style="color: #0000ff">子网掩码</span> gateway=<span style="color: #0000ff">网关</span> gwmetric=1<br />
netsh interface ip set dns name="本地连接" source=static addr=<span style="color: #0000ff">DNS</span> <br />
netsh interface ip add dns name = "本地连接" addr=<span style="color: #0000ff">备用DNS<br />
<br />
蓝色部分替换为具体的地址即可。</span>
<img src ="http://www.blogjava.net/xiaoxiaoleemin/aggbug/234692.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/xiaoxiaoleemin/" target="_blank">xiaoxiaoleemin</a> 2008-10-16 13:53 <a href="http://www.blogjava.net/xiaoxiaoleemin/archive/2008/10/16/234692.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>修改GMF属性视图</title><link>http://www.blogjava.net/xiaoxiaoleemin/archive/2008/04/03/190589.html</link><dc:creator>xiaoxiaoleemin</dc:creator><author>xiaoxiaoleemin</author><pubDate>Thu, 03 Apr 2008 04:53:00 GMT</pubDate><guid>http://www.blogjava.net/xiaoxiaoleemin/archive/2008/04/03/190589.html</guid><wfw:comment>http://www.blogjava.net/xiaoxiaoleemin/comments/190589.html</wfw:comment><comments>http://www.blogjava.net/xiaoxiaoleemin/archive/2008/04/03/190589.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/xiaoxiaoleemin/comments/commentRss/190589.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/xiaoxiaoleemin/services/trackbacks/190589.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp; <img height="422" alt="" src="http://www.blogjava.net/images/blogjava_net/xiaoxiaoleemin/PropertyViewBeforeModification.JPG" width="662" border="0" /><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 上图中紫色的椭圆结点在ecore模型中代表Method，在属性视图中可见它的一些属性。如果要使TimeProperty属性值为"NONE"时，TimeUnit和Value值分别变为"NONE"和0.0，应该如下修改MethodItemProvider类中的notifyChanged()方法(紫色的代码是添加的，其他均为GMF生成的）：<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img id="Codehighlighter1_54_894_Open_Image" onclick="this.style.display='none'; Codehighlighter1_54_894_Open_Text.style.display='none'; Codehighlighter1_54_894_Closed_Image.style.display='inline'; Codehighlighter1_54_894_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_54_894_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_54_894_Closed_Text.style.display='none'; Codehighlighter1_54_894_Open_Image.style.display='inline'; Codehighlighter1_54_894_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;notifyChanged(Notification&nbsp;notification)&nbsp;</span><span id="Codehighlighter1_54_894_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_54_894_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;updateChildren(notification);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /><br />
<img id="Codehighlighter1_140_854_Open_Image" onclick="this.style.display='none'; Codehighlighter1_140_854_Open_Text.style.display='none'; Codehighlighter1_140_854_Closed_Image.style.display='inline'; Codehighlighter1_140_854_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_140_854_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_140_854_Closed_Text.style.display='none'; Codehighlighter1_140_854_Open_Image.style.display='inline'; Codehighlighter1_140_854_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">switch</span><span style="color: #000000">&nbsp;(notification.getFeatureID(Method.</span><span style="color: #0000ff">class</span><span style="color: #000000">))&nbsp;</span><span id="Codehighlighter1_140_854_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_140_854_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">case</span><span style="color: #000000">&nbsp;EventPackage.METHOD__PROPERTY_NAME:<br />
<img id="Codehighlighter1_189_494_Open_Image" onclick="this.style.display='none'; Codehighlighter1_189_494_Open_Text.style.display='none'; Codehighlighter1_189_494_Closed_Image.style.display='inline'; Codehighlighter1_189_494_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_189_494_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_189_494_Closed_Text.style.display='none'; Codehighlighter1_189_494_Open_Image.style.display='inline'; Codehighlighter1_189_494_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_189_494_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">如果该项设置为NONE,那么TimeUnit和Value项应该分别设置为NONE和0.0</span><span style="color: #008000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #800080">Method&nbsp;owner&nbsp;=&nbsp;(Method)notification.getNotifier();<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TimeProperty&nbsp;newValue&nbsp;=&nbsp;(TimeProperty)notification.getNewValue();<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(newValue.equals(TimeProperty.NONE))<br />
<img id="Codehighlighter1_414_489_Open_Image" onclick="this.style.display='none'; Codehighlighter1_414_489_Open_Text.style.display='none'; Codehighlighter1_414_489_Closed_Image.style.display='inline'; Codehighlighter1_414_489_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_414_489_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_414_489_Closed_Text.style.display='none'; Codehighlighter1_414_489_Open_Image.style.display='inline'; Codehighlighter1_414_489_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span id="Codehighlighter1_414_489_Open_Text">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;owner.setTimeUnit(TimeUnit.NONE);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;owner.setValue(0.0);<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /></span></span><span id="Codehighlighter1_414_489_Open_Text">&nbsp;</span></span></span><span id="Codehighlighter1_414_489_Open_Text"><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">case</span><span style="color: #000000">&nbsp;EventPackage.METHOD__VALUE:<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">case</span><span style="color: #000000">&nbsp;EventPackage.METHOD__TIME_UNIT:<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">case</span><span style="color: #000000">&nbsp;EventPackage.METHOD__CLASS_NAME:<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">case</span><span style="color: #000000">&nbsp;EventPackage.METHOD__METHOD_NAME:<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">case</span><span style="color: #000000">&nbsp;EventPackage.METHOD__PARAMETERS:<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">case</span><span style="color: #000000">&nbsp;EventPackage.METHOD__RETURN_TYPE:<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fireNotifyChanged(</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;ViewerNotification(notification,&nbsp;notification.getNotifier(),&nbsp;</span><span style="color: #0000ff">false</span><span style="color: #000000">,&nbsp;</span><span style="color: #0000ff">true</span><span style="color: #000000">));<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">super</span><span style="color: #000000">.notifyChanged(notification);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></div>
&nbsp; MethodItemProvider类位于genmodel生成的edit项目中，它相当于Property View的ContentProvider。<br />
<br />
&nbsp;&nbsp;&nbsp; 
<img src ="http://www.blogjava.net/xiaoxiaoleemin/aggbug/190589.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/xiaoxiaoleemin/" target="_blank">xiaoxiaoleemin</a> 2008-04-03 12:53 <a href="http://www.blogjava.net/xiaoxiaoleemin/archive/2008/04/03/190589.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>GMF编辑器中图元的前景色，字体，线条宽度的定制方法</title><link>http://www.blogjava.net/xiaoxiaoleemin/archive/2008/04/01/190221.html</link><dc:creator>xiaoxiaoleemin</dc:creator><author>xiaoxiaoleemin</author><pubDate>Tue, 01 Apr 2008 15:05:00 GMT</pubDate><guid>http://www.blogjava.net/xiaoxiaoleemin/archive/2008/04/01/190221.html</guid><wfw:comment>http://www.blogjava.net/xiaoxiaoleemin/comments/190221.html</wfw:comment><comments>http://www.blogjava.net/xiaoxiaoleemin/archive/2008/04/01/190221.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/xiaoxiaoleemin/comments/commentRss/190221.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/xiaoxiaoleemin/services/trackbacks/190221.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要:    要让编辑器生动起来，GMF框架提供了更简单的方法，有些特性甚至不用修改代码只通过设置一下gmfgraph中某些元素的属性就可以实现。这一点，比GEF简单的多。&nbsp;&nbsp;<a href='http://www.blogjava.net/xiaoxiaoleemin/archive/2008/04/01/190221.html'>阅读全文</a><img src ="http://www.blogjava.net/xiaoxiaoleemin/aggbug/190221.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/xiaoxiaoleemin/" target="_blank">xiaoxiaoleemin</a> 2008-04-01 23:05 <a href="http://www.blogjava.net/xiaoxiaoleemin/archive/2008/04/01/190221.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>用JDOM读写xml文件</title><link>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/09/116242.html</link><dc:creator>xiaoxiaoleemin</dc:creator><author>xiaoxiaoleemin</author><pubDate>Wed, 09 May 2007 10:16:00 GMT</pubDate><guid>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/09/116242.html</guid><wfw:comment>http://www.blogjava.net/xiaoxiaoleemin/comments/116242.html</wfw:comment><comments>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/09/116242.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/xiaoxiaoleemin/comments/commentRss/116242.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/xiaoxiaoleemin/services/trackbacks/116242.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要:  在Java中用JDOM才操作xml文件很方便，需要的代码量也比其它XML解析器要少的多。下面用一个简单的例子来说明JDOM读写xml的最基本的步骤。&nbsp;&nbsp;<a href='http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/09/116242.html'>阅读全文</a><img src ="http://www.blogjava.net/xiaoxiaoleemin/aggbug/116242.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/xiaoxiaoleemin/" target="_blank">xiaoxiaoleemin</a> 2007-05-09 18:16 <a href="http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/09/116242.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>GMF:基于Type的连接 </title><link>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/07/115703.html</link><dc:creator>xiaoxiaoleemin</dc:creator><author>xiaoxiaoleemin</author><pubDate>Mon, 07 May 2007 06:42:00 GMT</pubDate><guid>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/07/115703.html</guid><wfw:comment>http://www.blogjava.net/xiaoxiaoleemin/comments/115703.html</wfw:comment><comments>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/07/115703.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/xiaoxiaoleemin/comments/commentRss/115703.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/xiaoxiaoleemin/services/trackbacks/115703.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 这里介绍基于Type的连接的建立方法，仍然用上一篇基于Reference的连接中用到的例子School，有老师类和学生类，同时老师能够指导多名学生。这种指导关系在GMF编辑器中用连接来表示，基于Type的连接就是在ecore模型中为该连接创建一个类TeacherToStudent，ecore模型对应的ecore_diagram图形如下所示：<br>&nbsp;&nbsp;<a href='http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/07/115703.html'>阅读全文</a><img src ="http://www.blogjava.net/xiaoxiaoleemin/aggbug/115703.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/xiaoxiaoleemin/" target="_blank">xiaoxiaoleemin</a> 2007-05-07 14:42 <a href="http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/07/115703.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>EMF建模常见问题</title><link>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/07/115626.html</link><dc:creator>xiaoxiaoleemin</dc:creator><author>xiaoxiaoleemin</author><pubDate>Mon, 07 May 2007 06:10:00 GMT</pubDate><guid>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/07/115626.html</guid><wfw:comment>http://www.blogjava.net/xiaoxiaoleemin/comments/115626.html</wfw:comment><comments>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/07/115626.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/xiaoxiaoleemin/comments/commentRss/115626.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/xiaoxiaoleemin/services/trackbacks/115626.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp; 我习惯于直接用ECore Editor建立ecore模型，如果装了GMF插件的话，在ecore文件上点击鼠标右键，通过菜单&#8220;Initialize ecore-diagram diagram file&#8221;可以生成类似类图的表示，这样可以从整体上看模型。而且在建模的过程中可以随时"Validate"以检查当前存在的错误。以下是一些常见的问题：<br>&nbsp;&nbsp;&nbsp; 1.Ecore Editor中根元素的直接子元素属性页中有&#8220;Ns Prefix"和"Ns URI"两项需要设置，前者可以设置为模型的名字，后者随便设置一个URI地址，如"http://"+模型名字。如果这两项不设置，那么当修改了ecore模型后，从genmodel上&#8220;Reload" ecore模型时出错。<br>&nbsp;&nbsp;&nbsp; 2.某个EReference如果多重性为"0...*",则在属性页中把lower bound设置为0，upper bound设置为-1。<br>&nbsp;&nbsp;&nbsp; 3.genmodel根元素的第一层子元素的属性页中，"All"类别中&#8220;prefix&#8221;属性值是指EMF生成的代码中Factory和Package等类的前缀，可以指定为模型名字，首字母大写以符合类名的习惯；&#8220;base package&#8221;属性值是生成的各个包的前缀，假设指定为&#8220;com.example"。然后有&#8220;Ecore&#8221;类别，其中的各个属性值是从ecore模型中读过来的，不可修改，其中&#8220;Package&#8221;类别下的"Name"属性值是包名的一部分（假设指定为model），接在前面的base package值之后，那么生成的Model 部分代码分别有三个包：com.example.model; com.example.model.impl; com.example.model.util.&nbsp;<br>&nbsp;&nbsp;&nbsp;btw：在有的GMF 版本中，如果包名存在首字母大写的单词，那么生成代码的时候会出错。<br><br>
<img src ="http://www.blogjava.net/xiaoxiaoleemin/aggbug/115626.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/xiaoxiaoleemin/" target="_blank">xiaoxiaoleemin</a> 2007-05-07 14:10 <a href="http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/07/115626.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>GMF：基于Reference的连接</title><link>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/06/115632.html</link><dc:creator>xiaoxiaoleemin</dc:creator><author>xiaoxiaoleemin</author><pubDate>Sun, 06 May 2007 15:15:00 GMT</pubDate><guid>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/06/115632.html</guid><wfw:comment>http://www.blogjava.net/xiaoxiaoleemin/comments/115632.html</wfw:comment><comments>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/06/115632.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/xiaoxiaoleemin/comments/commentRss/115632.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/xiaoxiaoleemin/services/trackbacks/115632.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: GMF中的Link有两个，分别是基于Type的和基于Reference的。对于前者，在ecore模型中有一个类对应这个连接，创建一个连接即创建了该类的一个实例，试想，如果一个模型比较复杂，有很多连接时，这种方法要在模型中要为连接建立很多与业务无关的类，使得模型非常复杂；对于后者，没有必要为每个连接在ecore中建立一个类，而是设置该连接对应的Reference即可。下面用一个school的模型来说明基于Reference的连接的建立方法，这个模型非常简单，如下图&nbsp;&nbsp;<a href='http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/06/115632.html'>阅读全文</a><img src ="http://www.blogjava.net/xiaoxiaoleemin/aggbug/115632.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/xiaoxiaoleemin/" target="_blank">xiaoxiaoleemin</a> 2007-05-06 23:15 <a href="http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/06/115632.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>GMF的安装依赖的插件</title><link>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/06/115620.html</link><dc:creator>xiaoxiaoleemin</dc:creator><author>xiaoxiaoleemin</author><pubDate>Sun, 06 May 2007 13:08:00 GMT</pubDate><guid>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/06/115620.html</guid><wfw:comment>http://www.blogjava.net/xiaoxiaoleemin/comments/115620.html</wfw:comment><comments>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/06/115620.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/xiaoxiaoleemin/comments/commentRss/115620.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/xiaoxiaoleemin/services/trackbacks/115620.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: GMF是Eclipse的一个插件，如同其它插件一样，它首先需要安装在相应版本的Eclipse上。另外，它还需要其它几个插件&nbsp;&nbsp;<a href='http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/06/115620.html'>阅读全文</a><img src ="http://www.blogjava.net/xiaoxiaoleemin/aggbug/115620.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/xiaoxiaoleemin/" target="_blank">xiaoxiaoleemin</a> 2007-05-06 21:08 <a href="http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/06/115620.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何显示Outline视图</title><link>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/06/115596.html</link><dc:creator>xiaoxiaoleemin</dc:creator><author>xiaoxiaoleemin</author><pubDate>Sun, 06 May 2007 10:03:00 GMT</pubDate><guid>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/06/115596.html</guid><wfw:comment>http://www.blogjava.net/xiaoxiaoleemin/comments/115596.html</wfw:comment><comments>http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/06/115596.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/xiaoxiaoleemin/comments/commentRss/115596.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/xiaoxiaoleemin/services/trackbacks/115596.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 上个帖子介绍了如何显示PropertySheet视图，这里继续介绍如何显示Outline视图，还是只关心与显示大纲视图相关的代码：<br>public class MySchoolEditor extends EditorPart implements ISelectionListener {<br>    ...<br>    protected IContentOutlinePage contentOutlinePage;&nbsp;&nbsp;<a href='http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/06/115596.html'>阅读全文</a><img src ="http://www.blogjava.net/xiaoxiaoleemin/aggbug/115596.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/xiaoxiaoleemin/" target="_blank">xiaoxiaoleemin</a> 2007-05-06 18:03 <a href="http://www.blogjava.net/xiaoxiaoleemin/archive/2007/05/06/115596.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>