小编Rom*_*las的帖子

在Richfaces中创建一个组合框

我在创建富有问题时遇到了问题:我做了如下组合框

<rich:comboBox selectFirstOnUpdate="false" defaultLabel="Enter some value">
    <f:selectItems value="#{userregister.selectItems}" />
</rich:comboBox>
Run Code Online (Sandbox Code Playgroud)

在支持bean中,我创建了selectItems,如下所示

 List<UISelectItem> selectItems;
 UISelectItem uisi = new UISelectItem();
 uisi.setItemLabel("label");
 uisi.setValue("value");
 selectItems.add(uisi);
Run Code Online (Sandbox Code Playgroud)

但我得到的异常是javax.servlet.ServletException: Value of tag <selectItems> attribute is incorrect.哪种正确的方法来创建具有动态值的组合框?

jsf richfaces

2
推荐指数
1
解决办法
1万
查看次数

逻辑OR的问题

这段代码有什么问题:

if (Gender != "M" || Gender != "F")
{
    alert("Please enter gender." + Gender);
    document.getElementById("gender").focus();
    return false;                               
}   
Run Code Online (Sandbox Code Playgroud)

javascript

2
推荐指数
3
解决办法
151
查看次数

从java程序运行bash脚本时出现奇怪的行为

我有一个脚本(准确地说是KSH脚本),它使用curl命令从FTP服务器下载3个文件.

当我手动运行我的脚本时,即通过执行命令./ftp_download.sh XXX(XXX是脚本的参数),下载正确完成.

因为我想从Java程序运行脚本,所以我创建了一个简短的Java类,其中包含以下内容:

public class Run {

    private static final String CMD = "/.../sh/ftp_download.sh XXX";

    public static void main(String[] args) {
        System.out.println("========================================================");
        BufferedReader out = null;
        try {
            long startTime = System.currentTimeMillis();
            String strOutputline;
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            Date now = new Date();
            Process processus = Runtime.getRuntime().exec(CMD);
            out = new BufferedReader(new InputStreamReader(processus.getInputStream()));
            while ((strOutputline = out.readLine()) != null) {
                now.setTime(System.currentTimeMillis());
                System.out.println(sdf.format(now) + " " + strOutputline);
            }
            System.out.println("RESULT : " + processus.waitFor());
            out.close(); …
Run Code Online (Sandbox Code Playgroud)

java linux process

1
推荐指数
1
解决办法
935
查看次数

使用JodaTime正确定义持续时间

我创建了一个采用两个日期(以毫秒为单位)的方法,并返回一个表示这两个日期之间的持续时间的句子.

目前,我有这个代码:

public static String formatDuration(long start, long end) {
    Interval interval = new Interval(start, end);
    return getPeriodFormatter().print(interval.toPeriod()).trim();
}

private static PeriodFormatter getPeriodFormatter() {
    PeriodFormatter pf = new PeriodFormatterBuilder().printZeroRarelyFirst()
        .appendYears().appendSuffix("y ", "y ")
        .appendMonths().appendSuffix("m" , "m ")
        .appendDays().appendSuffix("d ", "d ")
        .appendHours().appendSuffix("h ", "h ")
        .appendMinutes().appendSuffix("m ", "m ")
        .appendSeconds().appendSuffix("s ", "s ")
        .toFormatter();

    return pf;
}
Run Code Online (Sandbox Code Playgroud)

但是,我想我误解了我必须在JodaTime中定义间隔的方式.如果我尝试以下测试代码:

@Test
public void foobar() {
    try {
        TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
        SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss dd/MM/yyyy");
        long start = sdf.parse("10:30:00 24/06/2009").getTime();
        long end = …
Run Code Online (Sandbox Code Playgroud)

java jodatime

1
推荐指数
1
解决办法
1770
查看次数

Oracle触发器失败的原因是什么?

首先,让我简要解释一下我的应用程序是如何工作的:

该应用程序处理交易,这些交易作为XML文档存储在我们的数据库(Oracle 11g)中.包含这些信息的表定义如下:

table T_MYDEALS (
    DEAL_ID number(9, 0) not null,
    DEAL_XML xmltype
)
Run Code Online (Sandbox Code Playgroud)

当我们在此表中更新或插入新项时,我们有一个触发器,它将读取(使用XPath)此XML,并填充其他元数据表.

一切正常,除了在我的机器上.

现在问题

当我在我的机器上运行应用程序时(即Tomcat在我的Eclipse中运行,但连接到Homologation DB),触发器失败并出现以下错误:

WARN  [org.hibernate.util.JDBCExceptionReporter] SQL Error: 1722, SQLState: 42000
ERROR [org.hibernate.util.JDBCExceptionReporter] ORA-01722: invalid number
ORA-06512: at "MY_SCHEMA.AFTER_R_INSERT_MYDEAL", line 628
ORA-04088: error during execution of trigger 'MY_SCHEMA.AFTER_R_INSERT_MYDEAL'
Run Code Online (Sandbox Code Playgroud)

对不起,出于安全考虑,我不能把我的触发器放在这里.请注意,线628位于触发代码的末尾.

我的测试

所以我试着理解为什么这个错误发生在我的机器上(因为它只发生在我的机器上,我的同事都没有遇到这个问题).我不能说它什么时候开始停止工作,也许我最近更换了电脑?

首先,我检查源代码,然后检查我的数据库连接,但一切看起来都是正确的.我还调试了调试模式,看看发送给数据库的XML,或者至少在我们的HibernateXMLType(org.hibernate.usertype.UserType我的XML的转换,用于将我们的XML转换为Oracle可读的数据).但这里既没有发现任何错误.

我省了很多测试,但我最近的一项测试是获得一台新的Tomcat服务器,并部署一个部署在环境中的WAR(例如Homologation).然后,我执行了相同的测试,但触发器仍然失败.

到目前为止,我已经消除了以下嫌犯:

  • 源代码,如我还测试从被部署在环境和工作正常一WAR的应用;
  • DB本身,因为我连接到同一数据库的工作环境.我也试过用另一个DB,结果是一样的.
  • 用于我的测试的数据,如果我尝试保存相同的交易,但使用Homologation环境,它的工作原理.
  • JDK,因为我也改变了JDK的新版本;
  • Eclipse,因为我最近的测试是在Eclipse之外完成的;
  • Tomcat服务器,因为我也试过一个新的Tomcat.

我想知道的是,如果我的Windows XP环境有一些特定的编码配置,它会"转换"XML中的一些数据并制作它们

我的问题

  • 在测试中我可能忘记了哪些可能的元素?
  • 有没有办法确切知道Oracle触发器处理的XML(如果可能的话,不在Oracle实例上安装任何东西,因为我对它没有任何控制权)?

我知道我没有提供很多信息,但如果你能给我一些提示或想法,我将非常感激!

问候.


技术信息: Java 1.6,Oracle 11g,Tomcat 5.5.23,JSF …

java oracle triggers ora-04088

1
推荐指数
1
解决办法
2215
查看次数

计算总数并显示

我有十进制值1.19,1.44,4.59和等等的数组

如何计算总和和警报.

javascript

0
推荐指数
1
解决办法
327
查看次数

简单的HTML帮助

<li>不会因为某种原因变成链接,这是我的html和CSS

希望有人可以提供帮助.

<div class="header_quick_link">
    <ul>
     <li style="padding-left:700px;"><a href="#"><img src="images/signup-off.png" height="26px" alt="sign-up off"/></a></li>
     <li style="padding-left:798px;"><a href="#"><img src="images/login-off.png" height="26px" alt="sign-up off"/></a></li>
    </ul>
   </div>


.header_quick_link{
left: 0px;
right: 0px;
top: 0px;
height: 26px;
position: absolute;
background: url(../images/quicklink.png);
background-repeat: repeat-x;
z-index: -1;
}

.header_quick_link li {
float: none;
list-style: none;
left: 0px;
right: 0px;
top: 0px;
position: absolute;
z-index: 6;
height: 26px;
}
Run Code Online (Sandbox Code Playgroud)

html

0
推荐指数
1
解决办法
108
查看次数

Java的支付网关

如何使用java创建Payment Gateway?

java中支付网关的详细说明(对我有帮助).我想与我的应用程序集成.

java payment-gateway

0
推荐指数
1
解决办法
2万
查看次数

PL/SQL中的日期范围

如果我有一个名为Date列(Date字段)的表created_date,其值为"9/2/2010 5:25:42 PM".

我想选择从a start_date到a的所有行end_date.但是,end_date可能是null.在这种情况下,我想选择created_date大于的所有行end_date.

sql plsql

0
推荐指数
1
解决办法
7474
查看次数

修改尚未创建的元素的最佳方法

我的<input>网页中有一个字段,我想在其上添加一个特定的方法,比如说fooBar().

这是我做的:

<input id="xxx" .../>
<script type="text/javascript">
    $("xxx").fooBar = function() { ... };
</script>
Run Code Online (Sandbox Code Playgroud)

这很好用.但是,由于某些原因,我不会在这里详述(实际上HTML是由JSF组件生成的),<script>将在标记之前声明<input>.

所以换句话说,我会在我的HTML中有这个:

<script type="text/javascript">
    $("xxx").fooBar = function() { ... };
</script>
<input id="xxx" .../>
Run Code Online (Sandbox Code Playgroud)

所以当然这段代码无法正常工作,因为脚本会尝试get($("xxx"))并修改一个尚不存在的元素.

如果我想坚持这两个标签的确切顺序,那么实现我想要的最佳方法是什么?

编辑

在我的情况下,$指的是原型,但我也在jQuery我的应用程序中使用.我必须与IE6兼容:o(

javascript

0
推荐指数
1
解决办法
77
查看次数

如何指定bower-install的目标目录?

在我的index.html文件中,我添加了以下内容:

    <!-- bower:js -->
    <!-- endbower -->
Run Code Online (Sandbox Code Playgroud)

为了让install-bowergrunt 任务放置我所有的 Bower 依赖项。在我的 中Gruntfile.js,我有以下任务:

    'bower-install': {
        dist: {
            html: 'cwf/index.html'
        }
    }
Run Code Online (Sandbox Code Playgroud)

最后,在我的 中index.html,我得到类似的东西:

    <!-- bower:js -->
    <script src="bower_components/jquery/jquery.js"></script>
    <script src="bower_components/angular/angular.js"></script>
    ...
    <!-- endbower -->
Run Code Online (Sandbox Code Playgroud)

但是,我想将任务配置为../在 之前添加bower_components,以便得到:

    <!-- bower:js -->
    <script src="../bower_components/jquery/jquery.js"></script>
    <script src="../bower_components/angular/angular.js"></script>
    ...
    <!-- endbower -->
Run Code Online (Sandbox Code Playgroud)

我如何为此目的配置任务?

javascript gruntjs bower

0
推荐指数
1
解决办法
3616
查看次数