"安装RCU1.7遇到的小问题"
- 环境:此前安装过soa1.6,最近重新安装soa1.7时遇到的问题
- 安装Rcu1.7时,发现无法运行./rcu,错误提示如下:
{% codeblock lang:java %}
rcuHome/jdk/jre/bin/java: cannot execute binary file.
查看操作系统发现是32bit,而rcu只有64bit的。
{% codeblock lang:java %}
$getconf LONG_BIT
32
在32bit系统上安装64bit软件向下兼容应该是可以安装的,因此怀疑是jdk的问题。
修改rcu文件最后几行的jre_home 为中间件文件夹中的JDK:/home/pierre/Oracle/Middleware/jdk160_24/bin/java 后,重新运行即可解决该问题。
Read More
"定制EL function"
实现方法
创建一个空的java Project:Taglib
{% codeblock lang:java %}
package cn.dengdezhao.taglib;
public class SplitString {
public static String getString(String string) {
String[] strings = string.split(":", 3);
if (strings.length > 2) {
return strings[2];
} else …
Read More
"由意外断电导致oracle11g启动不起来的问题解决"
-
平台: linux + oracle 11g
-
故障: 意外断电之后,监听启动不了
解决方法
执行lsnrctrl start
命令时报错误代码如下:
TNS-12537
TNS-12560
TNS-00507
Linux Error:29
-
检查/etc/hosts文件,没有发现异常。
-
- 因为未改动任何配置文件,所以基本可以确定是断电造成文件损坏而引起。于是使用
relink all
看看能否解决该问题。
- {% codeblock lang:java %}
- # cd $ORACLE_HOME/bin
- # relink all
- {% endcodeblock %}
- 执行
relink all
命令之后,再执行lsnrctrl start
时,发现不报之前的错误了,出现了新的错误:
- {% codeblock lang:java …
Read More
"控件af:iterator以及af:forEach的对比"
页面如下
分别绑定iterBean中的两个集合类型变量,将其中的值取出来。
{% codeblock lang:java %}
BackingBean内容如下:
{% codeblock lang:java %}
package cn.dengdezhao;
import java.util.ArrayList;
import java.util.List;
public class IteratorBean {
List list = new ArrayList();
String[] values=new String[]{"1","2","3"};
List testList=new ArrayList();
public void setTestList …
Read More
"如何在页面碎片加载前调用逻辑"
实现方法
重写RegionController方法可以达到以上需求。
- 重写 RegionController类,在refreshRegion方法中加入需要调用的逻辑即可在页面碎片加载之前调用。
{% codeblock lang:java %}
package cn.dengdezhao;
import oracle.adf.model.RegionContext;
import oracle.adf.model.RegionController;
public class myController implements RegionController {
public myController() {
super();
}
@Override
public boolean refreshRegion(RegionContext regionContext) {
// TODO Implement this method
int flag=regionContext …
Read More
"如何获取web.xml中的context-param参数"
通过EL表达试获取
以web.xml中的参数:javax.faces.FACELETS_VIEW_MAPPINGS为例,
可通过以下EL获取。
{% codeblock lang:java %}
${initParam['javax.faces.FACELETS_VIEW_MAPPINGS']}
如果参数名称很简单,比如:testParameter,EL表达式也可以写成以下方式:
{% codeblock lang:java %}
${initParam.testParameter}
通过JAVA代码获取
如果需要在MB方法中获取该参数值,可以参照以下代码:
{% codeblock lang:java %}
public String action() {
FacesContext fctx=FacesContext.getCurrentInstance();
ExternalContext ec=fctx.getExternalContext();
ServletContext servletContext=(ServletContext)ec.getContext();
String value=servletContext.getInitParameter …
Read More
"Centos下安装mysql5.6后忘记ROOT密码,重置密码"
安装
去oracle官网下载mysql5.6 for linux安装介质V38444-01.zip。
解压缩之后
{% codeblock lang:java %}
MySQL-client-advanced-5.6.12-1.el6.i686.rpm
MySQL-devel-advanced-5.6.12-1.el6.i686.rpm
MySQL-embedded-advanced-5.6.12-1.el6.i686.rpm
MySQL-server-advanced-5.6.12-1.el6.i686.rpm
MySQL-shared-advanced-5.6.12-1.el6.i686.rpm
MySQL-shared-compat-advanced-5.6.12-1.el6.i686.rpm
MySQL-test-advanced-5.6 …
Read More
"Attribute set for xxxAttribute in view object xxxVO failed问题解决"
平台:Jdeveloper 9i
异常描述:
在表增加单选checkbox时,在VO中创建transient属性selector,最终在页面中无法勾选checkbox,发现值没法保存到VO中,页面抛出该异常:
{% codeblock lang:java %}
null - Attribute set for Selector in view object employeeVO1 failed
解决方案:
- 检查VO中的transient属性selector是否设置为updatable
- 如果是在开发模式下,清空所有classes文件,重新编译;如果是在正式环境,删除该路径下的VO对象,可使用以下命令。
{% codeblock lang:java %}
exec jdr_utils.deletedocument('/oracle/apps/dengdezhao/test/server/employeeVO');
Read More
"从BackingBean中调用不带fragments的taskflow"
有时候需要在backingBean中调用某一taskflow, 可以使用以下代码调用。不过只适用于可单独运行的taskflow,含有page fragments的taskflow不在此范围。
代码如下:
{% codeblock lang:java %}
public String callTaskFlow() {
FacesContext fctx = FacesContext.getCurrentInstance();
ControllerContext cc = ControllerContext.getInstance();
String taskflowId = "btf_task";
String taskflowDocument = "/WEB-INF/btf_task.xml";
Map params = new HashMap();
TaskFlowId tid = new TaskFlowId(taskflowDocument, taskflowId);
String taskflowURL = cc.getTaskFlowURL(false, tid, params);
ExtendedRenderKitService …
Read More
"分页栏出现3个问号BUG解决"
平台:Jdeveloper 11.1.1.7.0
BUG描述
标准控件af:table,“页”字前后出现三个问号。
原因分析
查看LOG文件
{% codeblock lang:java %}
无法从外观 mySkin.desktop 获取资源关键字 页
可见是RenderingContext类中getTranslatedString方法发生异常。
查看源代码分析:
找到源代码所在位置:
将JAR包解压得到RenderingContext类,反编译查看
结果如下RenderingContext.class:
{% codeblock lang:java %}
public String getTranslatedString(String key)
{
if (key == null)
return null;
try
{
return getSkin().getTranslatedString(getLocaleContext(), key);
}
catch …
Read More