数据专栏

智能大数据搬运工,你想要的我们都有

科技资讯

科技学院

科技百科

科技书籍

网站大全

软件大全

一般出现这种问题是因为客户端的classpath里没有org.jnp.interfaces.NamingContextFactory这个类。
编程百科
2020-08-20 22:49:23
相关推荐: 轻量级工作流引擎jBPM 4.4正式发布 jBPM中文开发指南(实现基本活动二) jBPM中文开发指南(实现基本活动) Activiti初学者教程 Dubbo&hsf&Spring-cloud的区别 Activiti工作流程详解 当当网的内部框架开源策略案例分享 Angular 权威教程
推荐群组: JBPM @net
更多相关推荐
JBoss 最近一直在整流程控制台,发现还是有不少成就感的,尤其昨天又实现了动画回放流程。我先给大家看一下我们控制台的规划和进度:-------------------------------------------------近期 * 细化task的生命周期,重新整理task操作 * 流程实例历史 * 表格方式查看流程历史 ------------------------------------------------- 远景 * 流程仿真 * 修改流程图 * 细粒度权限控制 * 回退 * 会签 * 委派 * swimlane * BI * BAM * 仪表盘 -------------------------------------------------ChangeLog * 2009-07-01 * [DONE] 实现动画方式回放流程 * [DONE] 实现deployment的suspend, resume(CR1显示已暂停定义列表时出现问题,trunk下已修正,等待GA) * [DONE] 实现processInstance的suspend, resume, end(CR1和trunk里,都没有暴露suspend和resume方法) * [DONE] 实现personalTasks, groupTasks, take task, cancel task * 2009-06-29 * [DONE] 登陆页面,登录名和密码为1/1 * [DONE] 添加start和signal,complete task时,添加变量 * [DONE] 整合web流程设计器,可以直接发布流程定义 * [DONE] 国际化 * 2009-06-01 and before * [DONE] 发布xml格式的流程定义 * [DONE] 流程定义管理(list, start, delete) * [DONE] 显示流程图(只在Process Instance详细信息中可显示) * [DONE] 流程实例管理(list, signal, view, delete) * [DONE] 任务管理(list, complete) * [DONE] 追踪流程图(显示Process Instance的当前位置) * [DONE] 多流向选择 * [DONE] 用户权限(user, group, membership的CRUD功能) * [DONE] 报表(most active process) 呵呵,现在实现的功能毕竟还是有限,我们的功能规划在一定程度上可能有些局限,希望大家能给多提提建议,认为控制台里还可以加些什么功能。这可是开源的啊,大家为了自己也要多提出建议来,O(∩_∩)O哈哈~ 下面是我们控制台一些功能的视频演示,包括流程设计和发布,动画回放流程等。 大家可以看看视频: http://www.family168.com/bbs/dispbbs.asp?boardid=6&Id=473 截图请看: http://www.family168.com/bbs/dispbbs.asp?boardid=6&Id=463 svn的下载地址: http://jbpmside.googlecode.com/svn/trunk
编程百科
2020-08-20 22:49:11
你这是jboss服务器下的写法,并不是通用的jndi查找类,如果应用到weblogic等服务器上,你的jndi调用就会有问题。
编程百科
2020-08-20 22:49:04
相关推荐: 我的第一个Nutz程序 讨论:在DAO中对Hibernate的封装 再次小结领域模型的种种观点 中文最新EJB3.0实例教程下载 jboss EJB 3.0 实例教程 JBoss下EJB3.0实例教程(黎活明) ejb3.0入门经典教程及源码 Jboss EJB3.0实例教程
推荐群组: DI
更多相关推荐
JBoss
 
环境
IDE : Eclipse3.4 ( JavaEE 版)
数据库: MySQL5.0
服务器: Jboss4.0.5
步骤
1.  搭建环境
2.  在 MySQL 中建立数据库表
表结构如下:
Id :无实意主键,采用自增方式生成
stuId :学号
Name :姓名
Password :密码
registerDate :注册时间
email : Email
phone :电话号码
sex :性别
对应的 SQL 语句如下:
DROP TABLE IF EXISTS `account`;
CREATE TABLE `account` (
  `Id` int(11) NOT NULL auto_increment,
  `stuId` varchar(20) NOT NULL,
  `name` varchar(50) NOT NULL,
  `sex` varchar(6) ,
  `registerDate` date ,
  `email` varchar(100) ,
  `phone` varchar(30 ,
  `password` varchar(20) ,
  PRIMARY KEY  (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
3.  建立 EJB 工程
4.  编写简单 Bean 文件 Account.java
定义 Account 类所具有的属性和方法,不包含任何业务相关代码,其中的属性与数据库表的各列相对应,通过 Eclipse 自动生成各属性的 getter 和 setter 方法。
5. 创建实体 Bean
6.  编写无状态 SessionBean
  SessionBean 用于实现业务逻辑,可分为有状态Bean(Stateful Bean)和无状态Bean(Stateless Bean)。当客户端请求时,服务器就会分配Session Bean为客户端服务。Session Bean可以直接访问数据库,但更多的时候是通过实体Bean实现数据访问。Session Bean可以作为业务处理对象出现在应用体系中。 在本实验中 用 Eclipse 的 SessionBean 创建向导创建无状态 SessionBean,  命名为 AccountManage , State type 选择 "Stateless" ,接口类型选择 "Remote", 创建成功后 Eclipse 会自动生成远程接口类 AccountManageRemote 。首先需要定义接口的内容, 因为调用EJB 的客户端是通过使用这个接口的引用从EJB容器得到的会话Bean对象stub,从而进行所需操作的。
在实现类中添加 EntityManager 的获取代码, EntityManager  是用来对实体 Bean 进行操作的辅助类。它可以用来产生 / 删除持久化的实体 Bean ,通过主键查找实体 bean ,也可以通过 EJBQL 语言查找满足条件的实体 Bean 。 EntityManager  的获取可以通过 @PersistenceContext 注释由 EJB 容器(本实验中即 jboss )动态注入。修改后的 AccountManage 类如下
@Stateless
public   class  AccountManage  implements  AccountManageRemote {
 
@PersistenceContext (unitName =  "test" )
private  EntityManager  manager ;
 
public  AccountManage() {
}
 
@Override
public   void  addAccount(Account account) {
manager .persist(account);
try  {
Producer . sendMessage ( "Congratulations! Register success!" );
}  catch  (Exception e) {
System. out .println( "@Send message error!" );
e.printStackTrace();
}
}
 
@Override
public  Account findAccount(String name, String password) {
Query query =  manager .createQuery( "from Account c "  +
                 " where c.name=:name"  +
                 " and c.password=:password" );
query.setParameter( "name" , name);
query.setParameter( "password" , password);
Account account = (Account)query.getSingleResult();
try  {
if (account== null ){
Producer . sendMessage ( "Login failed!" );
} else {
Producer . sendMessage ( "Congratulations! Login success!" );
}
}  catch  (Exception e) {
System. out .println( "@Send message error!" );
e.printStackTrace();
}
return  account;
}
 
@Override
public  Account findAccountById( int  id) {
return   manager .find(Account. class , id);
}
 
}
代码中对应于注册的 addAccount 方法通过 EntityManager 自带的 API 中的 persist 方法来实现,而对应于注册的查询方法 findAccount 通过手动编写 EJB QL 来实现,以用户名(学号)和密码作为参数,返回符合条件的结果,如果登录失败则返回 null ,同时利用消息驱动 Bean 向队列中发送成功或失败的消息。
7.  编写客户端程序调用 SessionBean 来完成登录和注册的功能。
为简单起见,客户端程序并没有提供图形用户界面,只起到简单测试的作用,因此将注册和登录信息都写死在了程序中。具体如下:
 
8.  编写相关配置文件
由于一部分配置文件可以由 Eclipse 和 Jboss 自动生成,所以需要写的配置文件只有两个,一个是 JNDI 的配置文件,另一个是日志的相关配置。 其中的 JNDI(The Java Naming and Directory Interface,Java 命名和目录接口) 是一组在Java 应用中访问命名和目录服务的API。为开发人员提供了查找和访问各种命名和目录服务的通用、统一的方式。借助于JNDI 提供的接口,能够通过名字定位用户、机器、网络、对象服务等。 命名服务 就像DNS 一样,通过命名服务器提供服务,大部分的J2EE 服务器都含有命名服务器。 目录服务 是 一种简化的RDBMS 系统,通过目录具有的属性保存一些简单的信息。目录服务通过目录服务器实现,比如微软ACTIVE DIRECTORY 等。 使用JNDI可带来如下好处:
        (1)包含大量命名和目录服务,可以使用相同API 调用访问任何命名或目录服务。
        (2)可以同时连接多个命名和目录服务。
        (3)允许把名称同JAVA 对象或资源关联起来,不必知道对象或资源的物理ID。
        (4)使用通用接口访问不同种类的目录服务
        (5)使得开发人员能够集中使用和实现一种类型的命名或目录服务客户API 上。
 
编程百科
2020-08-20 22:48:44
最近一直在做产品的技术选型,应该说做了较长时间的研究,目前基本上定在Seam,但在前台是用Facelets + RichFaces 还是用GWT,一直犹豫不定。整个架构初步是:Facelets(GWT) + Seam + Hibernate + Spring + Resetlet。目前用Seam,从商业角度考虑,最大的隐忧是没有大量成熟的案例,风险很大,但痴迷于它的从前端到后端的Full Stack方案,同时背后有JBoss的支撑。希望有朋友多来谈谈你们的想法。
编程百科
2020-08-20 22:48:30
相关推荐: JBoss目录结构说明 JBOSS 5.0.0GA 下开发JSF 的注意 netbeans + jboss4.X 集成开发碰到的问题 改进SEIR模型的matlab代码.zip jboss5.0热部署的问题 JBoss 5.0 安装与配置详解 热部署 2019年秋招—华为硬件工程师笔试题目.pdf
推荐群组: JBoss SEAM
更多相关推荐
JBoss 最近在琢磨ejb3,seam,容器是用的jboss5.0 GA,但是每次修改页面以后,也能部署到jboss的default的deploy下,但jboss实际运行的是tmp里的内容,而且tmp里的内容在页面修改后不会发生改变,每次重启jboss后重新生成tmp下临时工程才会起作用,这样效率太低了,都有点想放弃它了,后来想到了办法,只有启动了jboss以后,找到jboss的default目录tmp里的目录,修改程里的build.xml的deploy.dir路径才会起作用,虽然能提高效率,但是也很麻烦,今天下午下了jboss 5.1.0GA发现这个问题解决了。什么都不用修改就可以实现热部署了,实在高兴!!!!!给大家分享一下。
编程百科
2020-08-20 22:48:20
相关推荐: jBPM中文开发指南(实现基本活动) 工作流管理系统(WfMS)介绍 轻量级工作流jBPM-4.3官方“开发指南”中文版 jBPM4.0的用户指南(二) jBPM-4.0中文开发指南 JBPM4.0开发步骤
推荐群组: JBPM @net
更多相关推荐
JBoss 7.6. 流程同步为了进行流程同步建模,在执行中这是一个父子树形结构。 这个想法是执行主路径是树的根。 流程的主路径也被称作流程实例。 当在给定流程定义上启动或创建一个新流程实例时, 执行便被创建。 现在,因为执行的主路径和流程实例是相同对象, 这保证了用法的简单, 在没有同步情况的简单流程下。 基本执行结构的UML类图 图 7.6. 基本执行结构的UML类图 为了建立执行的多同步路径,活动实现比如一个分支或切分 创建子执行, 使用ActivityExecution.createExecution方法。 活动实现比如结合或合并可以停止流程的这些同步路径, 通过调用执行同步的stop方法。 只有叶子执行可以激活,非叶子执行应该不是激活的。 这个执行的树形结构没有坚持一个同步或结合行为的特殊类型。 它从事着分支或和切分 和结合或和合并来使用执行树结构, 用任何方式,他们想定义期望的同步行为。 这里我们看一个同步执行的例子。 执行的同步路径 图 7.7. 执行的同步路径 这里有执行的一个付款和一个发货路径。 在这种情况,水平线上的活动展示了分支和结合。这个执行显示了三个执行。 执行的主路径不是激活的(显示成灰色) 执行的付款和发货路径是激活的,分别指向了 bill和ship活动。 从事活动行为的实现,是他们想使用的执行结构。 假设多个任务必须在执行进行之前完成。 活动行为可以为这个产生一系列子执行。 或者可以选择,任务组件可以支持任务组, 分配给单独的执行。在那种情况, 任务组件成为同步任务的响应, 因此把这个责任移动到执行树形结构范围之外。 7.7. 异常处理器 在所有分配到流程的代码中,像 Activity,EventListeners和 Condition,可能分配给异常处理器。 这可以想成是把这些实现的方法实现包含在try-catch块中。 但是为了构建更多可复用的构建块, 为了委派类和异常处理逻辑, 异常处理器可以添加到核心流程模型中。 一个异常处理器可以分配给任何流程元素。 当一个异常发生在一个委派类中,一个匹配的异常处理器就会被找到。 如果找到了一个这样的异常处理器,它会有一个处理这个异常的机会。 如果一个异常处理器处理完成,没有出现问题,然后这个异常会 被认为是处理了,就会在委派代码调用后继续。 比如,一个转移有三个动作,第二个动作抛出一个异常, 这个异常被异常处理器处理,然后 编写自动活动,异常处理器提醒是很容易的。 默认是任意执行。没有方法需要在执行中调用。 所以如果一个自动活动抛出一个异常,被异常处理器处理, 这个执行会在这个执行后继续执行。这对于控制流向活动 就会有一个更大的困难。它们可能需要包含try-finally块 来调用执行中对应的方法,在异常处理器 获得一个机会来处理异常。比如,如果活动是等待状态, 然后发生了一个异常,这里就会有一个风险,线程会跳出 execution.waitForSignal()的调用, 导致执行在这个活动以后继续执行。 TODO: exceptionhandler.isRethrowMasked TODO: transactional exception handlers TODO: we never catch errors 7.8. 流程修改 TODO: 流程修改 7.9. 锁定和流程状态 一个执行的状态不是激活就是锁定。 一个激活的执行不是执行就是等待外部触发器。 如果一个执行不是STATE_ACTIVE,那么它就是被锁定。 一个锁定的执行是只读的,不能接受任何外部触发器。 当一个新执行被创建时,它是STATE_ACTIVE。 为了把状态修改成锁定状态,使用lock(String)。一些STATE_*常量 被提供了,它们演示了最常用的锁定状态。 但是在图片中的'...'状态展示了任何字符串 都可以作为状态提供给lock方法。 执行的状态 图 7.8. 执行的状态 如果一个执行被锁定,修改执行的方法会 抛出一个PvmException,信息会引用真实的锁定状态。 触发事件,更新变量,更新优先级,添加注释 不会当做是修改执行。 子节点的创建和删除也不会检测, 这意味着那些方法可以被外部API客户和活动行为调用, 即使执行在锁定状态。 确保比较getState()和STATE_*常量时 使用.equals,不要使用'==',因为如果执行从持久存储加载。 会创建一个新字符串,而不是使用常量。 一个执行实现会被锁定: * 当它结束 * 当它暂停 * 在异步延续过程中 更多的,锁定可以被活动实现使用, 让执行在等待状态下只读,然后为这个执行传递 的外部实例就像这样: * 一个人员任务 * 一个服务调用 * 一个等待状态当探测器检测一个文件的出现时就结束 在这些情况,策略是外部实例应该获得 执行的完全控制,因为它想要控制什么应该允许,什么不应该。 为了获得那种控制,他们锁定了执行,所以所有内部交互 必须通过外部实例传递。 一个创建外部实例的主要原因是, 它们可以在执行已经执行过还存在。比如, 在服务调用的情况,定时器可以导致执行获得超时转移。 当响应在超时后到达,服务调用实例应该 确认它没有signal这个执行。所以服务调用可以看做 一个活动实例(活动实例) 是对活动每个执行的唯一实例。 外部实例它们自己负责管理执行锁定。 如果定时器和客户端应用结果是选择 外部实例,而不是直接选择执行,然后在理论上是不必要的。 它是从事活动行为实现,无论它希望 执行锁定还是解锁。
编程百科
2020-08-20 22:48:13
sonic_yj 写道
dada 写道
最近改变了对drools的看法,它的适用领域比想象的要小很多。
讨论一下?我也在研究这个东东,我感觉出了规则匹配以外,随时变也是个很好的东西,我就拿来当java代码用,这个东西都方便。说说你用Drools遇到的问题和困惑,我学习学习 1. 调试困难 2. 严重依赖IDE 3. 为了提供客户个性定制匹配的功能,你需要建立一套复杂的规则录入界面。(天啊,已经和商业规则引擎很像了) 4. 需要如此复杂的机制来处理的业务领域很少。 5. 没有FROM、COLLECT之前易用性很差(3.0.X),甚至妨碍到了建模,和OO思想并不特别搭调。
编程百科
2020-08-20 22:47:44
如果是用tomcat的DBCP连接池,他有参数可以设置,以自动监测未释放的链接。不知道JBOSS的连接池有没有类似的特性。
编程百科
2020-08-20 22:47:35
相关推荐: 我对lib_chan的注释 Erlang和Python如何交互? 关于resin+unix+apache服务器问题讨论 JBoss实战:服务器配置指南.pdf JBoss应用服务器监控 JConsole远程监控JBoss服务器 通过JMX远程监控JBOSS7.1应用服务器 改进SEIR模型的matlab代码.zip
推荐群组: oracle
更多相关推荐
JBoss 目前需要实现一个monitor功能,要求能得到app server的http thread数目,平均响应时间,http port status,jndi port status,RMI port status,用java提供的类能实现吗?其实app server本身也提供一些类似的信息,但是我们是要求将这些数据取出,然后汇总到数据库.
编程百科
2020-08-20 22:47:26
你这个需求需要用mbean来做吗?mbean这样相互注册那到底由哪个jmx来管理呢?webServer给wepApp开个webServices 似乎可以很好的解决这个问题巴!Jms也不错! 如果一定要用Mbean的话可以通过注入JNDI来实现!但是这个对象很expensive!
编程百科
2020-08-20 22:47:20
haihai 写道
把信息写详细点,就这么少的信息,怎么看出问题 如果方面的话,可否下载附件?
编程百科
2020-08-20 22:47:13
相关推荐: Seam生命周期 jboss seam 2.0beta1的常见bug列表及解决(持续更新) 发现JBoss Seam很棒呀!有用Seam做过项目的吗? 与我一起学seam(1) jboss seam 教程 JBoss Seam JBoss_Seam--中文教程 jboss seam 中文文档 Jboss seam3 实战
推荐群组: JBoss SEAM
更多相关推荐
JBoss 开始学习JBOSS SEAM了,希望可以多多交流
编程百科
2020-08-20 22:46:53
相关推荐: Axis1.4:LinkageError:loader constraints violated SOAPMessage WebService soaphader 用户信息验证 java verbose 诊断部署问题 “级,不是这样升的...”——JBoss4.0.4GA下的app无法升级到Java6 Jboss 优化配置--Linux篇 jboss 4.0.4 GA构建、部署及初始化duke's bank应用的build文件 JBOSS SESSION集群配置过程 在default目录下快速配置JBoss集群(Web方面)
推荐群组: WebServices
更多相关推荐
JBoss 升级,一个时髦而又敏感的话题,我用的firefox现在似乎天天在升级,升完级后发现以前装的插件不见了;刚刚把IE升级到7,今天想让firefox放半天假,在IE7上面好好冲上一把浪,打开一个网页,上面要播放FLASH,IE见状弹出一个错误,说FLASH插件有问题,整个IE关闭然后退出,真是令我好生郁闷——升级并非永远是好事一桩阿。据说Java6的VM优化效果明显,程序在上面那个跑得欢阿,于是有人提议把JBOSS4.0.4GA升级到Java6,一通改环境变量,把JAVA_HOME换成6(我的机器有3个jdk),构建,部署,启动,看着屏幕的字流畅的翻滚着,心里甚为欢欣鼓舞,启动正常,呵呵,mustang,俺来了。试了几个功能,正常,当测试一下登陆的web service时,出错了,控制台翻出了一堆exception:
java 代码
  09 : 56 : 23 , 115  ERROR [SOAPFaultExceptionHelper] SOAP request exception   java.lang.UnsupportedOperationException: setProperty must be overridden by all s   ubclasses of SOAPMessage           at javax.xml.soap.SOAPMessage.setProperty(SOAPMessage.java: 424 )           at org.jboss.ws.soap.SOAPMessageImpl.(SOAPMessageImpl.java: 77 )           at org.jboss.ws.soap.MessageFactoryImpl.createMessageInternal(MessageFac   toryImpl.java: 220 )           at org.jboss.ws.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl   .java: 157 )           at org.jboss.ws.server.ServiceEndpoint.handleRequest(ServiceEndpoint.jav   a: 215 )           at org.jboss.ws.server.ServiceEndpointServlet.doPost(ServiceEndpointServ   let.java: 120 )           at javax.servlet.http.HttpServlet.service(HttpServlet.java: 717 )   每次在console看到这些信息敏感的神经都会为之颤动一下,从日志分析来看,不是app的程序错误,而是jboss的web service底层出错了,经过一番分析,错误原因大抵如下: Jboss的soap实现的是老的javax.xml.soap.SoapMessage接口,这个接口的setProperty方法在老版本是不需要override的,但是到了Java6,由于Java6的jdk本身自带soap包,而自带的这个包的SoapMessage接口对setProperty方法又强制其实现类要override自身,否则抛出异常:
java 代码
  public   void  setProperty(String property, Object value)        throws  SOAPException {            throw   new  UnsupportedOperationException( "setProperty must be overridden by all subclasses of SOAPMessage" );   }   那么余下的事情就很清楚了,在Java6下,JBoss的web service在执行时,加载的javax.xml.soap包是Java6的,而不是app中的包,因此发生了异常。 查了下Java6的发布日期,大概是06年的年底发布,而JBOSS最新的版本4.0.5G早在06年10月就正式推出,JBOSS不会傻到去支持Java6了,一查资料,在JBOSS的一个官方网页上终于看到了佐证: www.jboss.com/index.html , 这个帖子有个网友问JBOSS是不是支持Java6,JBoss的一个兄弟说没有这方面的行为,估计会在JBoss5的第二个版本才会考虑支持。白忙活了,也闹了个笑话,看来需要语重心长地说上一句——“级,不是这样升的。”
编程百科
2020-08-20 22:46:32
相关推荐: [已解决]如何将一个字符串转为ruby的Array和hash呢? JSON --- JAVA 使用方法 Fastjson技术内幕 ruby 中的to_json方法怎么样才能识别中文 [Ruby On Rails] Action Controller - 控制HTTP 流程 如何检查字符串是否包含Ruby中的子字符串? web服务器json_JSON Web令牌剖析 如何识别一个字符串是否Json格式
推荐群组: EXT
更多相关推荐
Ruby 最近的项目中需要把对象转化为json格式才能在js中传输,在.to_json的方法中,可以把英文完美的转化为json格式的字符串,但是对于中文确实无能为力,都是转化为了乱码,譬如:उ\..的格式,请问有什么办法可以把中文在转化为json的时候编码不乱掉?
编程百科
2020-08-20 22:46:22
相关推荐: 飞信的ruby gem──rfetion OAuth gem for rails,支持豆瓣,新浪微薄,腾讯微博,搜狐微博,网易微博 应女朋友的需求!做一个java软件能发送手机短信 Integrated gem5 + GPGPU-Sim Simulator ruby on rails 之 延时执行代码 rails的gem包介绍 rails gem列表大全及介绍
推荐群组: 90后的java开发
更多相关推荐
Ruby https://github.com/saberma/china_sms 现在支持的短信平台 推立方 短信宝 畅友网络 使用方法 # 支持 :tui3, :smsbao, chanyoo 短信接口 ChinaSMS.use :tui3, username: 'YOUR_USERNAME', password: 'YOUR_PASSWORD' ChinaSMS.to '13912345678', '[Test]China SMS gem has been released.'
编程百科
2020-08-20 22:46:12
相关推荐: 在windowsXp上安装ruby on rails的sqlite3-ruby的问题解决 一步步搭建 centos 环境下apache与Subversion集成 windows下的rails2.02环境搭建指南 Windows下如何安装Ruby开发环境,SQLite环境 gem install sqlite3-ruby安装成功了 在windowsXp上安装ruby on rails的sqlite3-ruby的问题解决 gem install sqlite3-ruby安装不成功的感想 rubygems安装sqlite3
推荐群组: D语言
更多相关推荐
Ruby
环境:
windows7 32bit
ruby 2.0.0p195 (2013-05-14) [i386-mingw32]
gem 2.03
C:\devkit
首先下载sqlite源码 http://www.sqlite.org/2013/sqlite-autoconf-3071700.tar.gz
解压后放到C:\devkit的根目录下C:\devkit\home\Administrator\sqlite
点击C:\devkit\msys.bat 进入编译环境
Administrator@suntsh-PC ~
$ pwd
/home/Administrator
 
Administrator@suntsh-PC ~
$ ls
sqlite
 
Administrator@suntsh-PC ~
$ cd sqlite
 
Administrator@suntsh-PC ~/sqlite
$ pwd
/home/Administrator/sqlite
 
Administrator@suntsh-PC ~/sqlite
进入到sqlite目录后输入./configure 
make
make install
 
编译后,复制C:\devkit\home\Administrator\sqlite\.libs目录下的sqlite3.exe和libsqlite3-0.dll到c:\ruby\bin目录下
开始安装sqlite3
gem  install sqlite3 --platform=ruby -- --with-sqlite3-include=C:\devkit\home\Administrator\sqlite  --with-sqlite3-lib=C:\devkit\home\Administrator\sqlite\.libs
 
可以安装成功
如果有问题可以联系我
email:b@geekzone.cn
编程百科
2020-08-20 22:46:03
相关推荐: Rails开发工具之Vim 飞信的ruby gem──rfetion 用 Ruby 踩踩四人帮 Ruby开发资源一览表 Ruby On Rails -- 开发流程 Ruby on Rails开发Web应用的基本概念 Ruby on Rails框架(3)-RESTful应用程序 Ruby的资源站点和开发工具列表
推荐群组: Ruby off Rails
更多相关推荐
Ruby https://github.com/saberma/ruby-dev-bookmarks 初步整理了 Ruby 开发的收藏资源,主要有以下几大类: 1. 参考类,这些常用资源放在最上面,特别是一些常用的 Gem 文档,以后不需要每次都使用 github 搜索了。 2. 学习类,如书籍、视频、在线培训等都,使用频率不高,但有时候想要的时候可以看看。 3. 资讯类,每周订阅等资源,掌握 Ruby 社区的最新动态 4. 开源类,收藏国内外 Rails 相关的开源项目 有遗漏的我再添加上去。
编程百科
2020-08-20 22:45:50
相关推荐: Flex and Extjs .. 谈一谈我对于目前国人对于EXTJS的错误看法 浅谈我对几个Web前端开发框架的比较 Java开发人员JavaScript 面向 Java 开发人员的 JavaScript【来源于网络】 前端开发、IDE、Node.js与Sublime text3 Ext JS 6学习文档–第1章–ExtJS入门指南 [乐意黎转载]JavaScript写类的前世今生
推荐群组: Jquery
更多相关推荐
Ruby 前台开发会涉及一些数据表ajax操作,用jquery好还是extjs,之前都没怎么用过,只是久仰大名本人javascript初学者还未入门,仅限于ctrl-c/v和alert调试水平, 大家平时是用什么调试的,有没有好的IDE推荐? 另外大家有没有好的绘图(趋势图、饼图等)扩展库可以推荐的。 谢谢了
编程百科
2020-08-20 22:45:38
相关推荐: 各位,来道面试题! Scala2.8探秘之for表达式 使用基于邻接表的Dijkstra算法求解Project Euler问题 大数据—Scala Spark初级入门(2):解析Scala集合操作 Spark初级入门(4):Scala 类和对象 Scala的面向对象(OO)编程入门
推荐群组: Scala圈子
更多相关推荐
Ruby Scala
原文链接: nicholasren.github.com/2013/01/27/water-pouring-problem.html
 
Note:  本文中的程序来自Martin Ordersky在www.coursea.org上所开设课程中的样例代码,文章主要目的是讲述我对此类问题解法及scala lazy evluation的理解。
问题描述
给你一个容量为9升的杯子和一个容量为4升的杯子,水不限使用,要求精确得到6升水。这就是“倒水问题”。我这里会讲述一个试用scala穷举法实现的一个例子。
建模
首先我们对这个问题进行建模。这个问题可以泛化为如下形式: 两个容量固定的杯子,可选的动作有: + 加满 + 倒空 + 从一个杯子倒入另一个杯子 初始状态为两个杯子都空,结束状态为其中一个杯子中的水量为所期望的结果。
从上面的描述中我们可以得到如下几个概念 状态 , 动作 , 路径 。
状态 用于表述各个杯子中当前的水量, 动作 用来改变各个杯子中水量, 路径 用于表示到达某一状态的动作序列。
状态
我们可以用一个 Vector[Int] 来表述杯子的状态,下标为杯子编号,元素值为当前杯子中的水量,另外,我们还需要一个 Vector[Int] 表示杯子的容量,下标为杯子编号,元素值为杯子的容量。于是我们得到如下代码: class Pouring ( capacity : Vector [ Int ]) { //States val initialState = capacity map ( x => 0 ) }
capacity 为杯子容量,  intialState 为问题初始状态。
动作
由上可知,解决这个问题可以有三种动作,  Empty ,  Fill ,  Pour ,每个动作都会导致状态发生变化,于是我们得到如下代码: //Moves trait Move { def change ( state : Vector [ Int ]) : Vector [ Int ] } case class Empty ( glass : Int ) extends Move { def change ( state : Vector [ Int ]) : Vector [ Int ] = state updated ( glass , 0 ) } case class Fill ( glass : Int ) extends Move { def change ( state : Vector [ Int ]) : Vector [ Int ] = state updated ( glass , capacity ( glass )) } case class Pour ( from : Int , to : Int ) extends Move { def change ( state : Vector [ Int ]) : Vector [ Int ] = { val amount = state ( from ) min ( capacity ( to ) - state ( to )) state updated ( from , state ( from ) - amount ) updated ( to , state ( to ) + amount ) } }
注意因为要考虑杯子的容量和杯子中剩余的水量, Pour 中的 change 方法稍微复杂了些。
路径
接下来到了最重要的路径部分了,路径是到达某一状态的动作序列,我们需要一个 List[Move] 表述动作序列,一个 Vector[Int] 表述结束状态。 还需要一个 extend 方法来扩展当前的动作序列,即在当前路径上,应用一个动作(Fill, Empty, Pour),得到一个新的路径。于是我们得到如下代码: //Paths class Path ( history : List [ Move ], val endState : Vector [ Int ]) { def extend ( move : Move ) = new Path ( move :: history , move change endState ) override def toString = ( history . reverse mkString " " ) + " -->" + endState }
算法
这里我们要采用的是 穷举法:
穷举从初始状态出发所有可能的动作,以及可能达到的状态,再穷举从这些状态出发所有可能的动作以及可能达到的状态,如此反复,直到找到一个可能达到的状态满足期望,则到达这个状态所经历的所有动作组成的路径即为问题的解。
首先我们来穷举给定一组杯子可能的动作: val glasses = 0 until capacity . length val moves = ( for ( g <- glasses ) yield Empty ( g )) ++ ( for ( g <- glasses ) yield Fill ( g )) ++ ( for ( from <- glasses ; to <- glasses if from != to ) yield Pour ( from , to ))
其次,在不进行任何动作时,动作列表为空,所达到的状态为初始状态,则: val initialPath = new Path ( List (), initialState )
接下来到最关键的部分了, 穷举从初始状态出发的所有可能扩展出来的路径及其所达到的状态 ,由于从任何状态开始穷举,都会得到一个一组路径,而不是一个,于是我们首先定义一个从给定一组路径,穷举其可能扩展出来的的路径的方法: def from ( paths : Set [ Path ], explored : Set [ Vector [ Int ]]) : Stream [ Set [ Path ]] = { if ( paths . isEmpty ) Stream . empty else { val more = for { path <- paths next <- moves map path . extend if !( explored contains next . endState ) } yield next paths #:: from ( more , explored ++ ( more . map ( _ . endState ))) } }
paths 为此次穷举的初始路径集合,  explored 用于记录已经穷举过的状态,以避免找出多条达到相同状态的路径,此方法通过穷举初始路径集合,在各个路径上扩展所有的动作,去掉那些达到状态已经被穷举过的路径,得到一组新的路径。
那么,从初始路径出发,其可能扩展出来的路径极其可能达到的状态如下: val pathSets = from ( Set ( initialPath ), Set ( initialState ))
对于给定的目标水量,遍历上述穷举结果路径找出 endState 包含目标水量的路径,如下: def solutions ( target : Int ) : Stream [ Path ] = { for { pathSet <- pathSets path <- pathSet if path . endState contains target } yield path }
总结
我们知道,穷举是一个无穷无尽的过程,上面的程序是如何运行的呢?其实是scala中强大的 lazy load 发挥了作用。我们再来看 from 方法的返回值类型,是 Stream[Set[Path]] ,  Stream  用于表述元素序列,它的一个重要特点是,只有需要使用到其中的某个元素时,程序才会去计算这个元素。于是,在程序运行时,scala并不会一下子把所有可能的路径都计算出来。对于 solutions 方法,也是一样。因此,scala只有在从 solutions 的计算结果中获取满足条件的路径时,pathSet才会穷举可能的路径,并且在找到满足条件的路径后,计算会立即结束,不会再列举其余的可能。
编程百科
2020-08-20 22:45:25
相关推荐: 我整理的Ruby on Rails教程 和Ruby&Rails 入门大全,对新手很有用 Rails 3.0 release note 调试101-Ruby, ROR Ruby-Ruby中机器学习的实用资源 ruby学习的资源 Ruby On Rails 学习资源 ruby on rails 学习之路
推荐群组: Ruby off Rails
更多相关推荐
Ruby
 
1、 TryRuby
 墙裂推荐。 需要fq配合codeschool一起练习的话 会有$5的代金券可以抵用学费
2、 CodeCadeMy
全部做完,受益匪浅。
3、 笨方法學 Ruby
讲的很仔细 用的1.9的版本 各个知识点都讲了 不错
4、 LearnStreet的Ruby板块
目前免费,有一个全程的练习和配套的3个小项目练习 一个银行 一个度量转换 一个锻炼记忆力的。
5、 TeamtreeHouse
最近广告打的最猛的就是这个网站 收费 一个月25$ 有 Ruby  试听过一节课 暂时没报名
6、  CodeSchool
强烈推荐的 包含Git 什么的 都有 其中的Ruby Bits讲最佳实践的课程 现在可以免费停Level1 感觉不错 配合PDF和视频
Ruby Style Guide 及 Rails Style Guide
感谢 @sevk  料好多啊
Ruby QuickRef
漫画教程 Why's (Poignant) Guide to Ruby
RUBY语言入门教程.PDF
Ruby manual 一页教程
面向对象脚本语言 Ruby 参考手册
从其它语言到 Ruby
感谢   @sundevilyang  的提供的ROR Resource
Rails-Girls-Materials
peepcode
Rails宝典via CSDN   via  @bjyuxiao
Ruby 工具箱    @woaigithub
 
http://api.rubyonrails.org/ 
http://ruby-doc.org/ 
http://apidock.com/ 
http://guides.rubyonrails.org/
来源: CIT .CN
编程百科
2020-08-20 22:45:08
使用起来挺简单的,但是里面的内容如果全部是独立博客,有点薄弱~~逻辑还不错
编程百科
2020-08-20 22:44:58
相关推荐: 推一下自己的项目YA-MinGW64 Go-lang特性介绍 内牛满面了,GTK+终于搞定了 Ruby vs Golang:四个维度对比,谁更胜一筹? ruby: 基本数据类型与语法 编程语言 Ruby 如何还能再活 25 年? 各语言的静态代码扫描工具 我们是如何让服务器从30台缩减到2台的:从Ruby迁移到Go语言 (转)
推荐群组: Scala圈子
更多相关推荐
Ruby Go 语言 新年了,打算学习一门新的语言丰富下自己。本人对谷歌情有独钟,对于Go语言,肯定也是简洁,高效。不过毕竟刚起步,资源可能不是很丰富。PS:本人现在是JAVA WEB方向各位有啥好建议呢?
编程百科
2020-08-20 22:44:47
相关推荐: Rabbitmq的网络层要点浅析 Ruby on Rails + AJAX + Mongrel + JMS/MQ/MOM = 即时通讯 Rails Linux安装配置全集 RabbitMQ 队列监控 Netkiller Linux 手札 Netkiller 系列电子书 Netkiller Security 手札 Netkiller Linux Web 手札
推荐群组: Ruby off Rails
更多相关推荐
Ruby netkiller RabbitMQ
1. RabbitMQ
RabbitMQ
running on 127.0.0.1 (localhost) on port 5672 (standard AMQP port). $ sudo apt-get install rabbitmq-server
1.1. rabbitmqctl - command line tool for managing a RabbitMQ broker rabbitmqctl status
1.2. Python - Pika
http://pika.github.com/ sudo apt-get install python-setuptools python-pip git-core sudo pip install pika sudo easy_install pika
1.3. Ruby amqp $ sudo gem install amqp 例 54.1. Ruby on RabbitMQ subscriber.rb $ cat subscriber.rb require 'rubygems' require 'amqp' EM.run { amq = MQ.new amq.queue("logins").subscribe do |login| puts login end }
producer.rb $ cat producer.rb require 'rubygems' require 'amqp' EM.run { amq = MQ.new queue = amq.queue("logins") %w[scott nic robi].each { |login| queue.publish(login) } }
test $ ruby subscriber.rb $ ruby producer.rb
编程百科
2020-08-20 22:44:36
相关推荐: 英雄会,会英雄-2007中国软件技术英雄会之前夜 Red Hat - JavaEye 开源企业架构论坛活动照片 JavaEye一个好玩小功能 javaEye湖南圈子成立啦,哈哈哈,美女帅哥,欢迎入会! Rails、Ruby、JAVA前景比较 \(^_^)/ ITeye 优秀专栏文章汇总 虚拟访谈:Struts 1.x一路走好 linux下nginx + mongrel的ROR的集群环境搭建 我如何把薪水从 50人民币/天 提升到 100美元/小时的 (3)
推荐群组: 老八婆的八卦堡
更多相关推荐
Ruby 论坛上总是看到有人说认识robbin后就打通任督二脉渴望成为大牛,苦于没有高人指导,哎
编程百科
2020-08-20 22:44:25
reyesyang 写道
http://ruby-china.org/topics/768
这个很详细。 推荐的不错。刚开始学ruby,谢谢分享
编程百科
2020-08-20 22:44:13
相关推荐: [转] JRuby 1.0.0RC3 Released! 这个论坛的代码能open source吗? 请注意Rails2.3自带的memcache-client有性能问题 改进SEIR模型的matlab代码.zip Status Ruby on Rails in China - Presentation Transcript 如何向开源软件贡献自己的力量 Hadoop Ecosystem(Hadoop生态环境-130多个相关开源项目) 我们分析了GitHub上5.46 亿条日志,发现中国开源虽然贡献大但还有这些不足......
推荐群组: Java研发交流
更多相关推荐
Ruby 项目地址:https://github.com/saberma/19wu 这是一个卖活动票的项目,完全免费开源,基于 Rails 3 框架,将在 12月24日 开发开发,欢迎关注。
编程百科
2020-08-20 22:44:00
相关推荐: 面向对象的三个基本特征 JavaScript内核系列 第9章 函数式的Javascript 无类语言的OOP(JavaScript描述) Ruby 函数式编程 《面向对象设计实践指南:Ruby语言描述》目录—导读 新手编程导论 Python新手入门 初学者最容易学的六种编程语言
推荐群组: D语言
更多相关推荐
Ruby
在使用java中,我常常遇到一个问题,我只需要一个函数,但我不得不创建一个类。
类常常让我很困惑,特别是在ruby中。
比如:
-3.abs()和abs(3),难不成,-3.abs 就面向对象了,在我眼中可没有任何区别。
如果是python的话,充其量是 abs(self)。
类有无比伦比的优点,我曾经写纯c程序时,深深的体会到了。
但我觉得有点怪异。但是有无法表达。为什么我觉得诡异啊。在无聊的英语课上,我想出了一种解释。
我心里的所期望的是  类>>>函数
类只提供 访问数据的基本的功能 ,比如Complex(复数)类只提供 get set等等最基本的。
函数对类进行操作,比如Complex abs(Complex); Complex operator+(Complex, Complex); Complex operator*(Complex, Complex);
也就是 "类"+函数 才是"完整"的类。
这样的好处是简单,我们了解一个类无需花太多时间,而函数要用的时候再查找,找不到自己写。
在使用ruby的时候,我常常被众多方法吓住,比如string类就有60多种方法,吓人吧。如果是新手,那得花多长时间才能掌握这个类啊。
在.net中,那是有过之无不及,把类弄到了极致,我擦,上万个类,每个类上百个方法。
坏处吗,呵呵, 有点行不通 ,继承啊,多态啊,神马的。。。
总而言之,函数是第一等公民,一切基于函数。
新手奇怪的想法,见笑了。。。
 
编程百科
2020-08-20 22:43:47
相关推荐: 改进SEIR模型的matlab代码.zip 在Windows平台使用Apache2.2和Mongrel运行Ruby on Rails 2019年秋招—华为硬件工程师笔试题目.pdf 人脸识别项目实战特训营
更多相关推荐
Ruby 删了,半天没人。。。。。。。。。。。。。。。。。。。
编程百科
2020-08-20 22:43:41
相关推荐: 围绕Ext JS 2.0的IDE、插件和工具 by Jack Slocum 谁快也没我快:NetBeans6.5正式版发布了 [Ext入门]图文详解Ext常见开发工具的安装使用 分享一个好用的Rails编辑器-Komodo 支持windows&linux 推荐 7 款最好的 Ruby on Rails 集成开发环境 Windows平台下的Ruby IDE点评 ruby 各种编辑器吐槽(转) [入门]Ruby on Rails入门教程及开发工具选用
推荐群组: Python
更多相关推荐
Ruby Komodo是一款Free的Editor,此公司主要靠Komodo IDE收费赚钱, Komodo editor纯免费,但是已经非常好用了Komodo支持windows,linux,mac ,下载地址http://www.activestate.com/komodo-edit/downloads 以下是直观的图示 配置下载 https://github.com/brookzhang/komodo-rubyonrails
编程百科
2020-08-20 22:43:31
>>为什么注释掉了#x=2,结果会改变呢,这个问题出在attr_accessor :value这个好像没有关系吧。 传递的是引用。把change(x)改成change(y)更能理解一点。 所以外部的x和change内部的x只是值相同而已,代表它们指向同一个地方。 x=2后change内x的值就改变了,但外部的x的值没有变
编程百科
2020-08-20 22:43:22
相关推荐: 调用条码打印机 调用条码打印机 java生成条形码 Ruby on Rails打造企业级RESTful API项目实战我的云音乐 [Ruby]调用外部程序 ruby shell 调用的六种方法 ruby 递归调用 ruby 方法之间的调用
推荐群组: EXT
更多相关推荐
Ruby 各位rails迷,有没有用前台调用过条码打印机,目前我只知道要发送字符串到打印机,但不知道如何连接?
编程百科
2020-08-20 22:43:13
相关推荐: 该版块人少了,没什么人爆面试题跟待遇了 我最喜欢的一个版块竟然从首页删掉了 自己的工作就像这里一样,变的冷冷清清 改进SEIR模型的matlab代码.zip ITeye 2012年10月第3周重要新闻回顾 众多Android 开源项目推荐,给力工作给力学习 2019年秋招—华为硬件工程师笔试题目.pdf 人脸识别项目实战特训营
推荐群组: 电脑DIY
更多相关推荐
Ruby 据上次改版ITEYE首页新闻的质量是越来越下降了 以前别人说我觉得是吐槽,现在发现要么每次打开都是那么写新闻,要么是随便挑几篇博客放上去 但是纳闷的是有很多高质量的文章被埋藏的很深。。。以前首页有吐槽公司 跳槽神马的 无聊时候看看还是有意思 不知道为什么上次改版给去了。。。
编程百科
2020-08-20 22:43:06
相关推荐: 请教一个ruby调用dll的问题 大家看看这个调用ICTCLAS.dll执行的结果是什么啊 MonkeySupport: 用C补丁加速Rails ICTCLAS2013 ictclas50_windows64 ICTCLAS 免费共享版 ICTCLAS2010 ICTCLAS的Java改造版本
推荐群组: 高级语言虚拟机
更多相关推荐
Ruby ictclas 我想用RUBY的FFI调用ICTCLAS分词,总是报attach_function出错,ruby代码如下:require 'rubygems' require 'ffi' module ICTCLAS extend FFI::Library ffi_lib '/home/ictclas32/API/libICTCLAS50.so' enum :eCodeType, [:CODE_TYPE_UNKNOWN,:CODE_TYPE_ASCII, :CODE_TYPE_GB,:CODE_TYPE_UTF8,:CODE_TYPE_BIG5] attach_function :ICTCLAS_Init, [:string], :bool attach_function :ICTCLAS_Exit, [], :bool attach_function :ICTCLAS_ParagraphProcess,[:string, :int, :string, :eCodeType,:int], :int end r = ICTCLAS.ICTCLAS_Init '/home/ictclas32' r = ICTCLAS.ICTCLAS_Exit 执行的时候报错: /usr/local/lib/ruby/gems/1.8/gems/ffi-1.0.9/lib/ffi/library.rb:147:in `attach_function': Function 'ICTCLAS_Exit' not found in [/home/ictclas32/API/libICTCLAS50.so] (FFI::NotFoundError) from ./test.rb:11 但是使用nm -D -C -g 来查看libICTCLAS50.so的输出函数信息,ICTCLAS_Init 是存在的。 这个会是什么样的问题?
编程百科
2020-08-20 22:42:55
C:\Ruby193\doc>dir驱动器 C 中的卷没有标签。 卷的序列号是 682A-3675 C:\Ruby193\doc 的目录 2012-08-06 21:50 . 2012-08-06 21:50 .. 2009-04-18 12:35 3,072,340 bookofruby.pdf 2012-04-21 11:57 897,587 ruby19-core.chm 2012-04-21 12:00 4,194,037 ruby19-stdlib.chm 2012-04-21 12:00 37,959 ruby19.chm 2012-05-15 23:12 1,141,199 ruby19.chw 5 个文件 9,343,122 字节 2 个目录 23,950,266,368 可用字节
编程百科
2020-08-20 22:42:46
应该为def f(range=0) (0..range).to_a.inject do |sum, n| while n > 0 sum += 1 if n % 10 == 1 n = n / 10 end sum end end
编程百科
2020-08-20 22:42:36
相关推荐: 围绕Ext JS 2.0的IDE、插件和工具 by Jack Slocum Aptana Ajax库插件---EXT2.0 netbeans 6.1开发版非常不错 myeclipse 8.5 安装aptana插件 提示jQuery、js、css、html Aptana Studio Ruby安装环境搭建和编辑工具Aptana_Studio_3的安装 Ruby / Rails开发工具Aptana Studio 3(基于Eclipse)安装及使用 Windows 下 Aptana Studio 3 Ruby on Rails 开发环境配置 Mac下搭建ruby on rails 开发环境 Aptana+pgadmin+postgres
推荐群组: dojo
更多相关推荐
Ruby 如题,在新建railsproject的时候,Resource '/test/public' does not exist.提示,没有像网上说的生成很多文件,值是有三个Library,其他的没有;服务也起不来;在通过Generators,方法为controller,生成User时,却报异常:E:\InstantRails-2.0-win\ruby\bin\rubyw.exe: no such file to load -- rdt_stream_sync.rb (LoadError),说文件不存在,因为是初次接触ruby和aptana,所以,请指教了;若谁有着方面的资料,请发点给我,谢谢了!zongsj2008@163.com
编程百科
2020-08-20 22:42:23
相关推荐: Ejb3.0--1 EJB3.0入门---第一个程序,HelloWorld! JBoss4.0.5GA+EJB3 jboss-5.0.0.GA 官方正式版 Drools JBoss Rules 5.0 Developer's Guide jboss netty5.0 JBoss 5.0 安装与配置详解 JBoss5.0安装及Web发布的总结
推荐群组: JBoss SEAM
更多相关推荐
JBoss 此例子的前提是把jboss都配置成功后的一个小的例子(以无状态会话bean为例,在eclipse-SDK-3.5.1-win32实现): 每个会话bean都需要有一个bean接口和一个bean类,其中bean接口是客户端代码和bean内部交互的机制,而bean类是内部方法的实现;一个会话bean的业务逻辑实现是在它的bean类中。会话bean的bean类还必须实现javax.ejb.SessionBean 接口或者用元数据描述符@stateless作为类声明的前缀。 创建工程SimpleSessionApp,然后通过properties=>Java Bulid Path =>Libraries的Add External JARS... 把C:\jboss-5.1.0.GA\client下的jar包全部加入 接口SimpleSession.java package com.ejb; public interface SimpleSession { public String getEchoString(String clientString); } 接口实现SimpleSessionBean.java package com.ejb; import javax.ejb.Remote; import javax.ejb.Stateless; @Stateless @Remote({SimpleSession.class}) public class SimpleSessionBean implements SimpleSession{ public String getEchoString(String clientString){ return clientString + " - from session bean"; } } 客户端代码SimpleSessionClient.java: package com.client; import java.util.Hashtable; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import com.ejb.SimpleSession; public class SimpleSessionClient { /** * @param args */ public static void main(String[] args) { Hashtable props = new Hashtable(); props.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory"); //JNDI驱动类名,它类似与JDBC指定驱动类 props.put(Context.PROVIDER_URL, "localhost:1099"); //命名服务提供者的的URL,包含提供命名服务的主机地址和端口号,它类似与JDBC指定数据的连接URL props.put("java.naming.rmi.security.manager", "yes"); props.put(Context.URL_PKG_PREFIXES, "org.jboss.naming"); // Context context=new InitialContext(props); try { InitialContext ctx = new InitialContext(props); SimpleSession simpleSession = (SimpleSession)ctx.lookup("SimpleSessionBean/remote"); String returnString = simpleSession.getEchoString("Ejb3.0 Test Jboss"); System.out.println("sent string:Ejb3.0 Test Jboss"+ ",received string :" + returnString); } catch (NamingException e) { e.printStackTrace(); } } } 上面代码完成后,把src\com\ejb下的两个类打成jar包,启动服务器,然后把jar包拷贝到C:\jboss-5.1.0.GA\server\default\deploy 打开http://localhost:8080/ JMX Console =>service=JNDIView =>点击list下的Invoke 看到如下说明发布成功: 然后运行SimpleSessionClient.java,便可以看到运行结果: sent string:Ejb3.0 Test Jboss,received string :Ejb3.0 Test Jboss - from session bean
编程百科
2020-08-20 22:42:13
相关推荐: Ubuntu Linux 10.04 安装及配置Nginx+PHP FPM ubunut 搭建rails2.02环境时,安装lightttpd时出错, 【飞天奔月出品】feilong-nginx-manager.bat v2.0 windows版nginx 快速操控神器 改进SEIR模型的matlab代码.zip nginx、jboss配置负载均衡 使用nginx 实现jboss负载均衡 关于Apache/Tomcat/JBOSS/Neginx/lighttpd/Jetty等一些常见服务器的区别比较和理解 使用Nginx帮助Jboss负载
推荐群组: Hello World 达人
更多相关推荐
JBoss 下载稳定版本,目前是nginx-0.7.64 http://nginx.net/ shell>> cd /opt shell>> wget http://sysoev.ru/nginx/nginx-0.7.64.tar.gz shell>> tar xzvf nginx-0.7.64.tar.gz shell>> cd nginx-0.7.64 然后开始编译安装,先配置编译变量: ./configure \ --user=nginx \ --group=nginx \ --prefix=/opt/nginx \ --sbin-path=/usr/sbin/nginx \ --conf-path=/etc/nginx/nginx.conf \ --error-log-path=/var/log/nginx/error.log \ --http-log-path=/var/log/nginx/access.log \ --http-client-body-temp-path=/tmp/nginx/client_body \ --http-proxy-temp-path=/tmp/nginx/proxy \ --http-fastcgi-temp-path=/tmp/nginx/fastcgi \ --pid-path=/var/run/nginx.pid \ --lock-path=/var/lock/subsys/nginx \ --with-http_stub_status_module 这里解释一下: # --user 是指启用程序所属用户 # --group 是指启动程序所属组 # --prefix 是指nginx安装目录(不是源代码目录) # --sbin-path 是指nginx命令位置 # --conf-path 是指配置文件路径 # --error-log-path 是错误日志路径 # --http-log-path 是访问日志 其他是一些临时文件的路径和做linux service需要用到的文件 需要监控服务需安装此监控状态模块 # --with-http_stub_status_module 然后make shell>> cd /opt/nginx shell>> make shell>> make install 现在已经可以通过nginx命令来启动了,但是我们如果想要把nginx做成一个服务,必须要写一个shell. 简单说一下, # chkconfig: - 85 15 所有运行级别,启动优先级85, 关闭优先级15 # processname: 进程名称 # config: nginx配置文件位置 # config: 系统会优先找第一个,如果找不到再去找第二个 # pidfile: 进程ID存放文件,用来存放程序启动后的进程ID # Source function library. linux常用的方法库,有兴趣可以去看看service XXX status 就使用了里边的一个方法 # Source networking configuration. 网络配置 #!/bin/sh # # nginx - this script starts and stops the nginx daemon # by haitao.tu at 2009-12-15 # email:tuhaitao@foxmail.com # # chkconfig: - 85 15 # description: Nginx is an HTTP(S) server, HTTP(S) reverse \ # proxy and IMAP/POP3 proxy server # processname: nginx # config: /etc/nginx/nginx.conf # config: /etc/sysconfig/nginx # pidfile: /var/run/nginx.pid # Source function library. . /etc/rc.d/init.d/functions # Source networking configuration. . /etc/sysconfig/network # Check that networking is up. [ "$NETWORKING" = "no" ] && exit 0 nginx="/usr/sbin/nginx" prog=$(basename $nginx) NGINX_CONF_FILE="/etc/nginx/nginx.conf" [ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx lockfile=/var/lock/subsys/nginx start() { [ -x $nginx ] || exit 5 [ -f $NGINX_CONF_FILE ] || exit 6 echo -n $"Starting $prog: " daemon $nginx -c $NGINX_CONF_FILE retval=$? echo [ $retval -eq 0 ] && touch $lockfile return $retval } stop() { echo -n $"Stopping $prog: " killproc $prog retval=$? echo [ $retval -eq 0 ] && rm -f $lockfile return $retval } restart() { configtest_q || configtest || return 6 stop start } reload() { configtest_q || configtest || return 6 echo -n $"Reloading $prog: " killproc $nginx -HUP echo } configtest() { $nginx -t -c $NGINX_CONF_FILE } configtest_q() { configtest >/dev/null 2>&1 } rh_status() { status $prog } rh_status_q() { rh_status >/dev/null 2>&1 } # Upgrade the binary with no downtime. upgrade() { local pidfile="/var/run/${prog}.pid" local oldbin_pidfile="${pidfile}.oldbin" configtest_q || configtest || return 6 echo -n $"Staring new master $prog: " killproc $nginx -USR2 retval=$? echo sleep 1 if [[ -f ${oldbin_pidfile} && -f ${pidfile} ]]; then echo -n $"Graceful shutdown of old $prog: " killproc -p ${oldbin_pidfile} -QUIT retval=$? echo return 0 else echo $"Something bad happened, manual intervention required, maybe restart?" return 1 fi } case "$1" in start) rh_status_q && exit 0 $1 ;; stop) rh_status_q || exit 0 $1 ;; restart|configtest) $1 ;; force-reload|upgrade) rh_status_q || exit 7 upgrade ;; reload) rh_status_q || exit 7 $1 ;; status|status_q) rh_$1 ;; condrestart|try-restart) rh_status_q || exit 7 restart ;; *) echo $"Usage: $0 {start|stop|reload|configtest|status|force-reload|upgrade|restart}" exit 2 esac 好了,已经做成chkconfig了,下边需要配置一下nginx反向代理,需要修改/etc/nginx/nginx.conf配置文件 user nginx; worker_processes 2; error_log /var/log/nginx/error.log; #error_log /var/log/nginx/error.log notice; #error_log /var/log/nginx/error.log info; pid /var/run/nginx.pid; events { use epoll; # 采用epoll,是linux下最快的event worker_connections 2048; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; #gzip on; #反向代理配置 ,向内网6台jboss转发 upstream jboss5 { server 172.16.201.127:8080 weight=10; server 172.16.201.128:8080 weight=10; server 172.16.201.129:8080 weight=10; server 172.16.201.130:8080 weight=10; server 172.16.201.131:8080 weight=10; server 172.16.201.132:8080 weight=10; } server { listen 80; server_name localhost; location ~ ^/nginx_status/ { stub_status on; access_log off; } location / { proxy_pass http://jboss5; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } }
编程百科
2020-08-20 22:41:42
《每天一课,jBPM4》视频教程今天推出基本应用系列——第一课(下),这个系列主要是以请假流程为例,请假流程作为OA中的一个经典案例,覆盖了多种流程特性,同时又兼具易读性。第一次使用工作流做项目或产品,遇到最简单最常见的需求就是分配任务,待办任务列表以及一些简单的流向判断,这是基本所有的流程都要实现的,而我们这一课的内容主要就是教大家在一个简单的业务流程里实现这些功能。看了这个课程之后,相信大家就可以解决我们平时最基本的流程需求了。下面是我们基本应用系列的大纲和第一课(下)的主要内容: 流程发起 请假申请 任务分配 待办任务 经理审核(请假天数大于3再给老板审批) 老板审批(审核,批准,不批准)
编程百科
2020-08-20 22:41:32