普元启动服务失败的解决方法当多个人同时使用一个数据库的时候,启动普元控制台会一直停留在rcall,然后显示一个超时的警告,那样就需要修改一下普元的一个定时器配置项。安装目录下\Primeton\Platform\apps_config\default\config中的一个user-config.xml文件将下列代码中高亮字段中的true改为false即可modulename=Schedulegroupname=Default!--IsSchedulerStart[optional,defaulttotrue],whethertostarttimerwhenapplicationstartsup--configValuekey=IsSchedulerStarttrue/configValue!--DataSouceName[optional,defaulttodefault],datasoucename(mustbethesameasDataSource'sGroupname)-!--configValuekey=DataSouceNamedefault/configValue--/group/module当EOS启动调试服务时,控制台停留在RCALL后无反应一般是因为定时任务的表被锁住的原因,可在plsqldeveloper中执行以下语句:select'altersystemkillsession'''||b.SESSION_ID||','||c.SERIAL#||'''immediate;'fromv$locked_objectb,v$sessioncwhereb.SESSION_ID=c.SID将查询结果复制到新的SQL窗口执行,执行完成后再启动服务--解决EOS连接失败无法启动的问题--查看有没有被锁的对象select*fromv$locked_object--查看被锁的对象是哪张表select*fromdba_objectswhereobject_idin(selectt.OBJECT_IDfromv$locked_objectt)--select*fromdba_objectswhereobject_id=73713--从菜单栏进入Tools/Sessions,将Status='ACTIVE'andSid=被锁对象id的记录,点击右键菜单中的Kill跟操作系统的兼容性有关,建议去下看ide\eclipse\plugins目录下org.eclipse.swt.win32.win32.x86_3.2.0.和org.eclipse.swt_3.2.0两个jar的版本,更换成高版本试试。提供清理eos开发过程中缓存清理的方法摘要:提供清理eos开发过程中缓存清理的方法。在eos开发过程中,经常遇到新开发的代码无法使用,右键部署之后依然使用原来的老旧代码,非常影响开发速度。这里提供下清理缓存的方式,确定我们的最新代码能够被使用。对于分组开发过程中,各人代码版本差异无法实现同样的运行效果有特效。1.删除%EOS_HOME%\apps_config\default\work_temp下的所有文件和文件夹。如需使用平台的各种日志请酌情备份logs下的内容。2.删除%EOS_HOME%\apache-tomcat-7.0.54\work下的所有内容,情况tomcat的缓存。3.删除%EOS_HOME%\apache-tomcat-7.0.54\webapps\default\WEB-INF\_srv\work\user下我们自己项目的内容。慎重,别删错了,我们自己开发的。ESB修改默认端口61616windows操作系统下的默认的ICS服务(InternetConnectionSharing)默认占用了61616端口,因此要解决jms端口冲突的情况有两种方式。方式一:停止ICS服务。命令行执行“services.msc”,找到ICS服务,右键停止,并设置为以后手动启动。方式二:修改ESB下JMS默认端口。找到D:\Primeton\ESB\studio\server\EOS\_srv\config下的esb-mq-config.xml和fts-server-config.xml文件,分别修改如下内容:(esb-mq-config.xml)transportConnectorstransportConnectorname=openwireuri=tcp://0.0.0.0:61616//transportConnectors(fts-server-config.xml)mqconfigurltcp://127.0.0.1:61616/urlreConnectTime5/reConnectTimeheartbeat_interval1/heartbeat_interval/mqconfig如何修改Platform发布Webservice服务的命名空间摘要:如何修改Platform发布Webservice服务的命名空间()为自己指定的名字。问题描述:Platform发布Webservice服务,在浏览器上查看wsdl,客户想修改其中的命名空间,如下图红色框的内容,想更换成自己的命名空间。适用环境:PlatformV6及以上版本处理经验:可以修改user-config.xml中的配置,将DefultNameSpace这行的注释放开,修改为自己指定的值。modulename=WebServicegroupname=WSDL!--configValuekey=DefultNameSpace应用被拦截,调用报错无法访问摘要:应用被拦截,调用报错无法访问场景描述:test.html放在Tomcat的webapps/ROOT目录下,或者其他非default应用下该静态HTML页面中有一个超链接ahref==_blankEOStest/a在资源管理器中直接双击该文件,在浏览器打开后(file:///协议),点击该超链接可以正常访问。但如果我通过访问该页面(http://协议),点击该超链接时,直接报错了,错误信息为:调用异常,请查看日志!而使用window.open没有问题。ahref=#onclick=open_win();EOStest/a,scripttype=text/javascriptfunctionopen_win(){window.open()}/script情况分析:获取前后http头,referer为不同应用之间的请求,那么可能被default给拦截了。解决办法:去除拦截器:把apps_config\default\config\eos\handler-web.xml中的以下配置注释掉,看看是否还会不会有问题:handlerid=HttpRefererWebInterceptorsortIdx=3pattern=/*class=com.eos.access.http.security.HttpRefererWebInterceptor/摘要:EOS工程部署到JBOSS后报错。分析日后初步确定为\jboss-6.1.0.Final\common\lib\slf4j-api.jar与\jboss-6.1.0.Final\server\default\deploy\default.ear\default.war\WEB-INF\lib\slf4j-api-1.5.6.jar冲突导致该问题已经解决。方案如下:修改jboss\server\default\deployers\jbossweb.deployer\META-INF\war-deployers-jboss-beans.xml添加org.slf4j,以过滤该包代码如下:1.!--Allowforwarlocalclassloaders:intesting--2.beanname=WarClassLoaderDeployerclass=org.jboss.web.tomcat.service.deployers.WarClassLoaderDeployer3.propertyname=relativeOrder-1/property4.propertyname=filteredPackagesjavax.servlet,org.apache.commons.logging,org.slf4j/property5./bean然后重启JBOSS服务器。原因分析:jboss加载jar包顺序问题。摘要:在最近修改SSO应用的时候,涉及到需要在jar包中读取工程配置文件的问题。在jar包中,读取配置文件,需要单独处理。项目中的一些配置文件,如dbconfig.propertieslog4j.xml不想打包进jar。因为可能会修改其中的一些配置信息,打包进jar,就变得比较笨拙,不方便修改文件。可以用如下方式,实现在jar包中读取外部配置文件。方法一:关键代码。读取properties文件方法:InputStreamins=getClass().getResourceAsStream(/resource/dbconfig.properties);但是log4j.xml又需要单独处理:PropertyConfigurator.configure(System.getProperty(user.dir)+/resource/log4j.xml);方法二:配置文件out.properties和jiar包在同一个目录下面:FileInputStreaminputStream1=newFileInputStream(out.properties);配置文件in.properties在jar包内部:InputStreaminputStream2=a.class.getResourceAsStream(/in.properties);org.apache.axis2.AxisFault:WSDoAllReceiver:摘要:使用EOS7.2自动生成的客户端代码,在调用带有安全头部消息的webservice接口的时候,会经常出现org.apache.axis2.AxisFault:WSDoAllReceiver:IncomingmessagedoesnotcontainrequiredSecurityheader的异常,可以照下文处理使用EOS7.2自动生成的客户端代码,在调用带有安全头部消息的webservice接口的时候,会经常出现org.apache.axis2.AxisFault:WSDoAllReceiver:IncomingmessagedoesnotcontainrequiredSecurityheader的异常,表示传入的消息不包含所需的安全报头,经过分析发现是该方法在第一次被调用后,已经生成了一些安全校验数据,ListenerManager.defaultConfigurationContext不为空,无法对新的请求进行安全数据的封装,导致请求失败,应该清空ListenerManager.defaultConfigurationContext应用环境,重新生成对应的安全校验数据。可以照如下方式进行处理。在使用客户端代码的方法中,加入ListenerManager.defaultConf