Xpages 在xpage重复控制中访问Java方法

Xpages 在xpage重复控制中访问Java方法,xpages,Xpages,我创建了一个Java脚本库,它有一个包含一些jdbc代码的Java类 它有一个从数据库(mysql)获取值的方法 现在我需要在重复控件中访问它,就像 但我找不到办法在那里找到它 如果它是一个javascript库,那么该方法将作为 var v=new com.db.db(); v、 doAllDb();}]> 预览xpage时,它为空。没有显示任何价值。但是我测试了java代码。它工作得很好。我一直在使用托管bean来完成这项工作:-) “用户”是我的托管bean。它必须是一个实现可序列化

我创建了一个Java脚本库,它有一个包含一些jdbc代码的Java类

它有一个从数据库(mysql)获取值的方法

现在我需要在重复控件中访问它,就像

但我找不到办法在那里找到它

如果它是一个javascript库,那么该方法将作为

var v=new com.db.db();
v、 doAllDb();}]>


预览xpage时,它为空。没有显示任何价值。但是我测试了java代码。它工作得很好。

我一直在使用托管bean来完成这项工作:-)


“用户”是我的托管bean。它必须是一个实现可序列化接口的JavaBean,具有一个没有参数的构造函数,并具有用于访问属性的公共getter/setter。在我的示例中,用户bean实现了getRowClubs()方法,该方法返回表示俱乐部行的对象列表(来自我今天早上使用的应用程序)

如果您在托管bean方面需要更多帮助,请告诉我?从您的问题中,我猜您需要关于如何在bean中引用方法的帮助

编辑

我刚刚看到了bean的其余部分(在可滚动视图中)。使用您的bean,您可以使用以下内容:

<xp:repeat id="repeat1" rows="30" value="Db.data" var="row">

假设您已经在faces-config.xml中定义了bean,例如:

  <managed-bean>
    <managed-bean-name>Db</managed-bean-name>
    <managed-bean-class>com.db.Db</managed-bean-class>
    <managed-bean-scope>session</managed-bean-scope>
  </managed-bean>

分贝
com.db.db
一场
我还建议您从bean中删除“main”方法。如果需要从普通Java程序测试它,那么创建一个带有“main”的测试类来实例化和运行bean


/约翰

请看。实际上,John,我正在尝试类似的事情。在ECLIPSE中执行的java代码工作得很好。在Designer中,我只有方法,没有使用主方法。但是我没有得到任何价值。我建议您尝试向getter添加一些伪值来隔离问题,以确定它是语法/引用问题,还是db配置的配置/上下文问题?
importPackage(com.db);
<xp:repeat id="repeat1" rows="30">
    <xp:this.value><![CDATA[#{javascript:importPackage(com.db);
<xp:repeat rows="10" var="row" value="#{User.rowClubs}">
<xp:repeat id="repeat1" rows="30" value="Db.data" var="row">
  <managed-bean>
    <managed-bean-name>Db</managed-bean-name>
    <managed-bean-class>com.db.Db</managed-bean-class>
    <managed-bean-scope>session</managed-bean-scope>
  </managed-bean>