- 浏览: 181116 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
louis0911:
发布项目的时候就报错。不知道什么原因。。。自己搭的也报错,把您 ...
Tomcat下发布webservice1 -
Mr_caochong:
非常好的博文,例子实用但是如何输出package信息呢
asm操作Java(二) -
wenjinglian:
up up
Js中escape(),encodeURI()和encodeURIComponent()使用和比较 -
makemyownlife:
看来还得补补知识
tomcat与apache区别 -
tinguo002:
非常的棒!谢谢楼主
对于[0] 和[1] 终于理解了咯,按照上 ...
iterator的用法
FCKeditor是一款强大的网页编辑器,它是sourceforge.net上的一个开源项目,功能比较多而且可以定制,并提供多种语言的版本包括(asp、cfm、php、lasso、perl、py、jsp)。
1、我们可以http://www.fckeditor.net/download或在http://sourceforge.net/projects/fckeditor/下载到fckeditor(source),目前最新版本为2.6,对于jsp来说,我们还要另外下载一个工具包fckeditor(java) 。
2、下载之后分别为:FCKeditor_2.6.zip和 FCKeditor-2.3.zip 将它们分别解压。解压缩fckeditor(source)到你的web项目的根目录下,并且解压缩fckeditor(java)。
解压在网站根目录ROOT下,我使用的是TOMCAT默认根目录,再将for java包里的lib里的包复制到WEB-INF/lib下,并将 fckeditor.tld也复制到WEB-INF下
修改/WebRoot/WEB-INF/web.xml文件,只定义了两个Servlet映射,并且对上传文件的目录和允许哪些文件上传、拒绝哪些文件上传做了设置,请注意,这两个servlet的url-pattern我都在原来代码的前面加上了/fckeditor,这是表示FCKeditor的根目录。另外SimpleUploader中的enabled属性要改成true,允许上传,增加内容如下:
注意:步骤3、4设置了文件浏览和上传的配置,web.xml中Servlet的<url-pattern>要和fckconfig.js中的URL引用一致。另外,我也把FCKeditor目录\fckeditor\editor\filemanager\下的connectors文件夹移到了\fckeditor\editor\filemanager\browser\default\目录下,我也不知道这样做有什么用处,但好像不这样做就会发生错误,希望大家指教。
这里直接使用标签调用,因为JS调用会出现一些问题,可能是我设置有问题吧
在JSP中中引入标签库
这里有一点一定要注意,那就是这里的属性都要避免使用相对路径。
刷新页面,又见编辑器,此时,可以顺利的上传文件了。整合编辑器的任务到此完成。
下一步,就是怎样对编辑器进行更多的控制了。
以下内容是直接复制别人的,没测试:
五、配置文件fckconfig.js
1、DefaultLanguage:缺省语言,可更改为“zh-cn”
2、添加常用的中文字体:在上面打开的文件中找到
加上几种我们常用的字体
3、自定义工具栏:可修改或增加ToolbarSets,例如:
4、EnterMode和ShiftEnterMode:“回车”和“Shift+回车”的换行行为,注释提示了可选模式
5、EditorAreaCss:编辑区样式文件
6、其他参数:
六、自定义样式
工具栏的Style选项,是由fckconfig.js指定的配置文件来产生的:
FCKConfig.StylesXmlPath = FCKConfig.EditorPath + 'fckstyles.xml' ;
可修改fckstyles.xml来自定义样式。
七、如何获取编辑器中插入的图片
从文章开头的功能设计我们可以看出,当用户编辑完文章后,我们应该能获取文章中插入的图片信息。怎样获取编辑器中的插入的图片呢?IT进行时在他的文章FCKeditor的几点重要改进和使用心得,值得分享 中是这样做的:在上传图片的对话框的JavaScript中添加代码,使得当用户插入图片点OK后通知列表框,代码如下:
我认为这个方法不好,第一,这个方法是侵入性的,需要修改FCKeditor的代码;第二,这种方法能够在用户插入图片的时候获得图片信息,但是如果用户插入的图片,接着又把图片从文章中删除了呢?这时候是无法跟踪的。
正确的思路应该是在编辑器失去焦点的时候,获取编辑器中的文档,通过DOM取得文章中所有的图片。代码如下:
八、如何给每一个用户分配一个单独的目录用来保存用户上传的图片。
经过我对FCKeditor的文档的反复阅读,发现FCKeditor自带的API没有办法实现这样的功能,所以,修改的重点还是在FCKeditor.java中。我们可以对源代码进行如下修改:
1、打开FCKeditor-2.3\src\com\fredck\FCKeditor\uploader目录下的SimpleUploaderServlet.java文件,找到SimpleUploaderServlet类的doPost方法,它的代码如下:
2、打开FCKeditor-2.3\src\com\fredck\FCKeditor\connector目录中的ConnectorServlet.java文件,进行同法处理。
最后,重新编译打包即可,记得一定要import com.xkland.domain.User类才能编译通过哦。
至此,经过简单的修改即可实现我们想要的功能。
1、我们可以http://www.fckeditor.net/download或在http://sourceforge.net/projects/fckeditor/下载到fckeditor(source),目前最新版本为2.6,对于jsp来说,我们还要另外下载一个工具包fckeditor(java) 。
2、下载之后分别为:FCKeditor_2.6.zip和 FCKeditor-2.3.zip 将它们分别解压。解压缩fckeditor(source)到你的web项目的根目录下,并且解压缩fckeditor(java)。
解压在网站根目录ROOT下,我使用的是TOMCAT默认根目录,再将for java包里的lib里的包复制到WEB-INF/lib下,并将 fckeditor.tld也复制到WEB-INF下
修改/WebRoot/WEB-INF/web.xml文件,只定义了两个Servlet映射,并且对上传文件的目录和允许哪些文件上传、拒绝哪些文件上传做了设置,请注意,这两个servlet的url-pattern我都在原来代码的前面加上了/fckeditor,这是表示FCKeditor的根目录。另外SimpleUploader中的enabled属性要改成true,允许上传,增加内容如下:
<servlet> <servlet-name>Connector</servlet-name> <servlet-class>com.fredck.FCKeditor.connector.ConnectorServlet</servlet-class> <init-param> <param-name>baseDir</param-name> <param-value>/UserFiles/</param-value> </init-param> <init-param> <param-name>debug</param-name> <param-value>true</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet> <servlet-name>SimpleUploader</servlet-name> <servlet-class>com.fredck.FCKeditor.uploader.SimpleUploaderServlet</servlet-class> <init-param> <param-name>baseDir</param-name> <param-value>/UserFiles/</param-value> </init-param> <init-param> <param-name>debug</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>enabled</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>AllowedExtensionsFile</param-name> <param-value></param-value> </init-param> <init-param> <param-name>DeniedExtensionsFile</param-name> <param-value>php|php3|php5|phtml|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|dll|reg|cgi</param-value> </init-param> <init-param> <param-name>AllowedExtensionsImage</param-name> <param-value>jpg|gif|jpeg|png|bmp</param-value> </init-param> <init-param> <param-name>DeniedExtensionsImage</param-name> <param-value></param-value> </init-param> <init-param> <param-name>AllowedExtensionsFlash</param-name> <param-value>swf|fla</param-value> </init-param> <init-param> <param-name>DeniedExtensionsFlash</param-name> <param-value></param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Connector</servlet-name> <url-pattern>/fckeditor/editor/filemanager/browser/default/connectors/jsp/connector</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>SimpleUploader</servlet-name> <url-pattern>/fckeditor/editor/filemanager/upload/simpleuploader</url-pattern> </servlet-mapping>修改/WebRoot/fckeditor/fckconfig.js,修改部分如下:
FCKConfig.BasePath + "filemanager/browser/default/browser.html?Connector=connectors/jsp/connector" ; FCKConfig.BasePath + "filemanager/browser/default/browser.html?Type=Image&Connector=connectors/jsp/connector" ; FCKConfig.BasePath + "filemanager/browser/default/browser.html?Type=Flash&Connector=connectors/jsp/connector" ; FCKConfig.BasePath + 'filemanager/upload/simpleuploader?Type=File' ; FCKConfig.BasePath + 'filemanager/upload/simpleuploader?Type=Image' ; FCKConfig.BasePath + 'filemanager/upload/simpleuploader?Type=Flash' ;
注意:步骤3、4设置了文件浏览和上传的配置,web.xml中Servlet的<url-pattern>要和fckconfig.js中的URL引用一致。另外,我也把FCKeditor目录\fckeditor\editor\filemanager\下的connectors文件夹移到了\fckeditor\editor\filemanager\browser\default\目录下,我也不知道这样做有什么用处,但好像不这样做就会发生错误,希望大家指教。
这里直接使用标签调用,因为JS调用会出现一些问题,可能是我设置有问题吧
在JSP中中引入标签库
:<%@ taglib uri="http://fckeditor.net/tags-fckeditor" prefix="FCK" %> <FCK:editor id="EditorDefault" basePath="/editor/fckeditor/" imageBrowserURL="/editor/fckeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=connectors/jsp/connector" linkBrowserURL="/editor/fckeditor/editor/filemanager/browser/default/browser.html?Connector=connectors/jsp/connector" flashBrowserURL="/editor/fckeditor/editor/filemanager/browser/default/browser.html?Type=Flash&Connector=connectors/jsp/connector" imageUploadURL="/editor/fckeditor/editor/filemanager/upload/simpleuploader?Type=Image" linkUploadURL="/editor/fckeditor/editor/filemanager/upload/simpleuploader?Type=File" flashUploadURL="/editor/fckeditor/editor/filemanager/upload/simpleuploader?Type=Flash"> This is some <strong>sample text</strong>. You are using <a href="http://www.fredck.com/fckeditor/">FCKeditor</a>. </FCK:editor>
这里有一点一定要注意,那就是这里的属性都要避免使用相对路径。
刷新页面,又见编辑器,此时,可以顺利的上传文件了。整合编辑器的任务到此完成。
下一步,就是怎样对编辑器进行更多的控制了。
以下内容是直接复制别人的,没测试:
五、配置文件fckconfig.js
1、DefaultLanguage:缺省语言,可更改为“zh-cn”
2、添加常用的中文字体:在上面打开的文件中找到
FCKConfig.FontNames = 'Arial;Comic Sans MS;Courier New;Tahoma;Times New Roman;Verdana' ;
加上几种我们常用的字体
FCKConfig.FontNames = '宋体;黑体;隶书;楷体_GB2312;Arial;Comic Sans MS;Courier New;Tahoma;Times New Roman;Verdana' ;
3、自定义工具栏:可修改或增加ToolbarSets,例如:
FCKConfig.ToolbarSets["Demo"] = [ ['Bold','Italic','-','OrderedList','UnorderedList','-','Link','Unlink','-','TextColor','BGColor','-','Style','-','Image','Flash','Table'] ] ;
4、EnterMode和ShiftEnterMode:“回车”和“Shift+回车”的换行行为,注释提示了可选模式
5、EditorAreaCss:编辑区样式文件
6、其他参数:
AutoDetectLanguage=true/false 自动检测语言 BaseHref="" 相对链接的基地址 ContentLangDirection="ltr/rtl" 默认文字方向 ContextMenu=字符串数组,右键菜单的内容 CustomConfigurationsPath="" 自定义配置文件路径和名称 Debug=true/false 是否开启调试功能,这样,当调用FCKDebug.Output()时,会在调试窗中输出内容 EnableSourceXHTML=true/false 为TRUE时,当由可视化界面切换到代码页时,把HTML处理成XHTML EnableXHTML=true/false 是否允许使用XHTML取代HTML FillEmptyBlocks=true/false 使用这个功能,可以将空的块级元素用空格来替代 FontColors="" 设置显示颜色拾取器时文字颜色列表 FontFormats="" 设置显示在文字格式列表中的命名 FontNames="" 字体列表中的字体名 FontSizes="" 字体大小中的字号列表 ForcePasteAsPlainText=true/false 强制粘贴为纯文本 ForceSimpleAmpersand=true/false 是否不把&符号转换为XML实体 FormatIndentator="" 当在源码格式下缩进代码使用的字符 FormatOutput=true/false 当输出内容时是否自动格式化代码 FormatSource=true/false 在切换到代码视图时是否自动格式化代码 FullPage=true/false 是否允许编辑整个HTML文件,还是仅允许编辑BODY间的内容 GeckoUseSPAN=true/false 是否允许SPAN标记代替B,I,U标记 IeSpellDownloadUrl=""下载拼写检查器的网址 ImageBrowser=true/false 是否允许浏览服务器功能 ImageBrowserURL="" 浏览服务器时运行的URL ImageBrowserWindowHeight="" 图像浏览器窗口高度 ImageBrowserWindowWidth="" 图像浏览器窗口宽度 LinkBrowser=true/false 是否允许在插入链接时浏览服务器 LinkBrowserURL="" 插入链接时浏览服务器的URL LinkBrowserWindowHeight=""链接目标浏览器窗口高度 LinkBrowserWindowWidth=""链接目标浏览器窗口宽度 Plugins=object 注册插件 PluginsPath="" 插件文件夹 ShowBorders=true/false 合并边框 SkinPath="" 皮肤文件夹位置 SmileyColumns=12 图符窗列数 SmileyImages=字符数组 图符窗中图片文件名数组 SmileyPath="" 图符文件夹路径 SmileyWindowHeight 图符窗口高度 SmileyWindowWidth 图符窗口宽度 SpellChecker="ieSpell/Spellerpages" 设置拼写检查器 StartupFocus=true/false 开启时FOCUS到编辑器 StylesXmlPath="" 设置定义CSS样式列表的XML文件的位置 TabSpaces=4 TAB键产生的空格字符数 ToolBarCanCollapse=true/false 是否允许展开/折叠工具栏 ToolbarSets=object 允许使用TOOLBAR集合 ToolbarStartExpanded=true/false 开启是TOOLBAR是否展开 UseBROnCarriageReturn=true/false 当回车时是产生BR标记还是P或者DIV标记
六、自定义样式
工具栏的Style选项,是由fckconfig.js指定的配置文件来产生的:
FCKConfig.StylesXmlPath = FCKConfig.EditorPath + 'fckstyles.xml' ;
可修改fckstyles.xml来自定义样式。
七、如何获取编辑器中插入的图片
从文章开头的功能设计我们可以看出,当用户编辑完文章后,我们应该能获取文章中插入的图片信息。怎样获取编辑器中的插入的图片呢?IT进行时在他的文章FCKeditor的几点重要改进和使用心得,值得分享 中是这样做的:在上传图片的对话框的JavaScript中添加代码,使得当用户插入图片点OK后通知列表框,代码如下:
try { var obj = window.dialogArguments.Editor.parent.document; obj.getElementById( " tip.c_tip_has_pic " ).value = " 1 " ; } catch (e) { }
我认为这个方法不好,第一,这个方法是侵入性的,需要修改FCKeditor的代码;第二,这种方法能够在用户插入图片的时候获得图片信息,但是如果用户插入的图片,接着又把图片从文章中删除了呢?这时候是无法跟踪的。
正确的思路应该是在编辑器失去焦点的时候,获取编辑器中的文档,通过DOM取得文章中所有的图片。代码如下:
function FCKeditor_OnComplete( editorInstance ) { editorInstance.Events.AttachEvent( 'OnBlur', onEditorBlur ) ; } function onEditorBlur(){ var oSelect = $("img_select"); for(var i=oSelect.options.length-1; i>0; i--){ oSelect.options[i] = null; } oEditor = FCKeditorAPI.GetInstance('EditorDefault'); var imgs = oEditor.EditorDocument.body.all.tags("img"); for(var i=0; i < imgs.length; i++){ var oOption = document.createElement("option"); oOption.appendChild(document.createTextNode(imgs[i].src)); oSelect.appendChild(oOption); } }
八、如何给每一个用户分配一个单独的目录用来保存用户上传的图片。
经过我对FCKeditor的文档的反复阅读,发现FCKeditor自带的API没有办法实现这样的功能,所以,修改的重点还是在FCKeditor.java中。我们可以对源代码进行如下修改:
1、打开FCKeditor-2.3\src\com\fredck\FCKeditor\uploader目录下的SimpleUploaderServlet.java文件,找到SimpleUploaderServlet类的doPost方法,它的代码如下:
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { if (debug) System.out.println("--- BEGIN DOPOST ---"); response.setContentType("text/html; charset=UTF-8"); response.setHeader("Cache-Control","no-cache"); PrintWriter out = response.getWriter(); String typeStr=request.getParameter("Type"); String currentPath=baseDir+typeStr; String userName = request.getSession().getUser().getName(); currentPath = currentPath + userName + "/"; String currentDirPath=getServletContext().getRealPath(currentPath); currentPath=request.getContextPath()+currentPath; if (debug) System.out.println(currentDirPath); String retVal="0"; String newName=""; String fileUrl=""; String errorMessage=""; if(enabled) { DiskFileUpload upload = new DiskFileUpload(); try { List items = upload.parseRequest(request); Map fields=new HashMap(); Iterator iter = items.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (item.isFormField()) fields.put(item.getFieldName(),item.getString()); else fields.put(item.getFieldName(),item); } FileItem uplFile=(FileItem)fields.get("NewFile"); String fileNameLong=uplFile.getName(); fileNameLong=fileNameLong.replace('\','/'); String[] pathParts=fileNameLong.split("/"); String fileName=pathParts[pathParts.length-1]; String nameWithoutExt=getNameWithoutExtension(fileName); String ext=getExtension(fileName); File pathToSave=new File(currentDirPath,fileName); fileUrl=currentPath+"/"+fileName; if(extIsAllowed(typeStr,ext)) { int counter=1; while(pathToSave.exists()){ newName=nameWithoutExt+"("+counter+")"+"."+ext; fileUrl=currentPath+"/"+newName; retVal="201"; pathToSave=new File(currentDirPath,newName); counter++; } uplFile.write(pathToSave); } else { retVal="202"; errorMessage=""; if (debug) System.out.println("Invalid file type: " + ext); } }catch (Exception ex) { if (debug) ex.printStackTrace(); retVal="203"; } } else { retVal="1"; errorMessage="This file uploader is disabled. Please check the WEB-INF/web.xml file"; } out.println(""); out.flush(); out.close(); if (debug) System.out.println("--- END DOPOST ---"); }我们要做的就是在String currentPath=baseDir+typeStr;这一句之后加入从Session中取出用户名,并添加到currentPath字符串之后的操作,如代码中加亮部分所示。
2、打开FCKeditor-2.3\src\com\fredck\FCKeditor\connector目录中的ConnectorServlet.java文件,进行同法处理。
最后,重新编译打包即可,记得一定要import com.xkland.domain.User类才能编译通过哦。
至此,经过简单的修改即可实现我们想要的功能。
- ckeditor_3.1.zip (1.6 MB)
- 下载次数: 66
发表评论
-
Js中escape(),encodeURI()和encodeURIComponent()使用和比较
2010-09-10 23:59 1626escape(), encodeURI()和encodeURI ... -
支持多种视频格式的网页视频播放器代码
2010-06-24 08:56 12458/** *视频播放 *参数说明 u - 媒体 ... -
js获取窗口宽度高度
2010-06-23 15:17 2220关于获取各种浏览器可 ... -
javascript 打开新窗口的方法详解
2010-03-25 09:16 1320一、window.open()支持环境: JavaScript ... -
js WebBrowser
2010-01-13 18:40 1693js WebBrowser 控件设置页面打印系列2010年01 ... -
自动读取文件夹中图片并显示在网页中
2009-10-27 22:12 5787将此网页放到有图片的文件夹下,它将自动读取你文件夹里的图片,然 ... -
javascript查询天气预报信息
2009-10-23 18:52 2336iframe的形式来显示其他网站上的天气预报,这样有一点不好, ... -
Cookie的操作
2009-09-16 18:46 851/** * 取得cookie中的信息 * @param ... -
浏览器的判断
2009-09-16 18:37 909//浏览器的判断 brower = function() { ... -
如何用JavaScript判断客户端浏览器是否安装了Flash插件,及其版本?
2009-09-15 15:23 2977<SCRIPT LANGUAGE="Java ...
相关推荐
FCKeditor还有很多新手不会用,不会调, 现传上一份FCKeditor,有需要的就取,放TOMCAT下直接运行就可以.
FCKeditor (jsp在线编辑器)配置总结
3.4 适时打开编辑器 10 4 修改FCKeditor的配置: 11 4.1 方法一:修改fckconfig.js 文件 11 4.2 方法二:使用一个额外的配置文件覆盖默认配置 11 4.3 配置的加载顺序 11 4.4 提示 11 4.5 一般需要修改的配置项 11 ...
方法一:通过javascript调用(前提是在head里要引入<script type="text/javascript" src="fckeditor/fckeditor.js">文件) 1.创建并输出一个编辑器(参见fckeditortest项目test1.html) 2.用编辑器递换一个TextArea...
该web在线编辑器继承了FckEditor的思路,把所有的图片文件做成了一个图片,可以大幅度提升加载速度,然后摒弃了前二者冗余的功能,仅保留了使用频率最高的功能,最后继承了eWebEditor的Iframe调用方式,不过比...
三种方法调用FCKeditor 1.FCKeditor自定义标签 (必须加头文件 <%@ taglib uri="/TestFCKeditor" prefix="FCK" %> ) 2.script脚本语言调用 (必须引用 脚本文件 ...
特点: 1.修改了文件上传命名方式。解决中文文件名上传与显示。...3.优化整个编辑器的风格。把不必要的功能去除。 4.调用简单。 <jsp:attribute name="value"> </jsp:attribute> </FCK:editor>
Spring4GWT ...JARP是为petri 网提供的一个Java编辑器,基于ARP分析器。可以将网络图导出为 GIF, JPEG, PNG, PPM, ARP and PNML (XML based)文件格式。使用了优秀的JHotDraw 5.2 框架。 activemq...
在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...
Java编写的网页版魔方游戏 内容索引:JAVA源码,游戏娱乐,魔方,网页游戏 Java编写的网页版魔方游戏,编译后生成.class文件,然后用HTML去调用,不过运行时候需要你的浏览器安装有运行Class的插件。Java源代码实现部分...
//开启时焦点是否到编辑器,即打开页面时光标是否停留在fckeditor上 26. FCKConfig.ForcePasteAsPlainText = false ; //是否强制粘贴为纯文件内容 27. FCKConfig.AutoDetectPasteFromWord = true ; //是否自动探测...
Spring4GWT ...JARP是为petri 网提供的一个Java编辑器,基于ARP分析器。可以将网络图导出为 GIF, JPEG, PNG, PPM, ARP and PNML (XML based)文件格式。使用了优秀的JHotDraw 5.2 框架。 activemq...
Spring4GWT ...JARP是为petri 网提供的一个Java编辑器,基于ARP分析器。可以将网络图导出为 GIF, JPEG, PNG, PPM, ARP and PNML (XML based)文件格式。使用了优秀的JHotDraw 5.2 框架。 activemq...
Spring4GWT ...JARP是为petri 网提供的一个Java编辑器,基于ARP分析器。可以将网络图导出为 GIF, JPEG, PNG, PPM, ARP and PNML (XML based)文件格式。使用了优秀的JHotDraw 5.2 框架。 activemq...
Spring4GWT ...JARP是为petri 网提供的一个Java编辑器,基于ARP分析器。可以将网络图导出为 GIF, JPEG, PNG, PPM, ARP and PNML (XML based)文件格式。使用了优秀的JHotDraw 5.2 框架。 activemq...
Spring4GWT ...JARP是为petri 网提供的一个Java编辑器,基于ARP分析器。可以将网络图导出为 GIF, JPEG, PNG, PPM, ARP and PNML (XML based)文件格式。使用了优秀的JHotDraw 5.2 框架。 activemq...
Spring4GWT ...JARP是为petri 网提供的一个Java编辑器,基于ARP分析器。可以将网络图导出为 GIF, JPEG, PNG, PPM, ARP and PNML (XML based)文件格式。使用了优秀的JHotDraw 5.2 框架。 activemq...
Spring4GWT ...JARP是为petri 网提供的一个Java编辑器,基于ARP分析器。可以将网络图导出为 GIF, JPEG, PNG, PPM, ARP and PNML (XML based)文件格式。使用了优秀的JHotDraw 5.2 框架。 activemq...
Spring4GWT ...JARP是为petri 网提供的一个Java编辑器,基于ARP分析器。可以将网络图导出为 GIF, JPEG, PNG, PPM, ARP and PNML (XML based)文件格式。使用了优秀的JHotDraw 5.2 框架。 activemq...