小编Her*_*iaz的帖子

Primefaces:实现LazyDataModel

我正在尝试使用延迟加载实现一个表.我想我从演示页面和文档中得到了所有步骤,但我总是得到"没有找到记录"的消息.我想我已经将代码减少到最小化表达式,至少应该有一条记录:

表页面:

<h:form id="listaEmpresas">
<p:dataTable id="tablaEmpresas" value="#{empresasTableMB.lazyDataModel}" var="empresa">
                    <p:column>
                        <f:facet name="header">
                            <h:outputText value="#{msgs.empresa_tabla_nombre}"/>
                        </f:facet>
                        <h:outputText value="#{empresa.nombre} "/>
                    </p:column>

</p:dataTable>
</h:form>
Run Code Online (Sandbox Code Playgroud)

LazyDataModel:

@Override
public List<Empresa> load(int first, int pageSize, String sortField, SortOrder so, Map<String, String> filters) {
    List<Empresa> listaEmpresas = new ArrayList();
    Empresa e = new Empresa();
    e.setNombre("Company");
    listaEmpresas.add(e);
    this.setRowCount(1);
    return listaEmpresas;
 }


@Override
public void setRowIndex(int rowIndex) {
    if (rowIndex == -1 || getPageSize() == 0) {
        super.setRowIndex(-1);
    }
    else
        super.setRowIndex(rowIndex % getPageSize());
}
Run Code Online (Sandbox Code Playgroud)

我必须覆盖setRowIndex或者我得到一个异常"java.lang.ArithmeticException:/ by zero".我正在使用primefaces-3.1-SNAPSHOT,jsf 2.0.3和tomcat 6.0.请帮忙.我错过了什么?

primefaces jsf-2

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

使用mybatis 3调用pl/sql函数

我有一个函数在pl/sql中返回一个布尔值.我试图直接获得该布尔值但没有成功,所以现在我正在尝试将其转换为字符串(我不想修改数据库):

<parameterMap id="publicObject"   type="map">
<parameter javaType="java.lang.Object" jdbcType="VARCHAR" mode="OUT" property="result" /> 
<parameter javaType="java.lang.String" jdbcType="VARCHAR" mode="IN" property="id" /> 
</parameterMap>     

<select id="isPublicObject" parameterMap="publicObject" statementType="CALLABLE">

   <![CDATA[
    {
    declare
    v_bool BOOLEAN := TRUE;
    begin
    v_bool := PACKNAME.STF$IS_PUBLIC_OBJECT(#{id});
    #{result} := CASE WHEN v_bool THEN 'TRUE' ELSE 'FALSE' END;
    end;
    }
    ]]>

</select>
Run Code Online (Sandbox Code Playgroud)

然后我得到这个异常:"查询数据库时出错.原因:org.apache.ibatis.type.TypeException:使用JdbcType OTHER为参数#2设置null时出错.尝试为此参数设置不同的JdbcType或不同的jdbcTypeForNull配置属性. :java.sql.SQLException:列类型无效:1111 ####

此代码在数据库中正常工作:

declare
    v_bool BOOLEAN := TRUE;
    v_str  VARCHAR2(5);
begin
   v_bool := PACKNAME.STF$IS_PUBLIC_OBJECT('000000');
   v_str := CASE WHEN v_bool THEN 'TRUE' ELSE 'FALSE' END;
   dbms_output.put_line('result:');
   dbms_output.put_line(v_str); 
end;
Run Code Online (Sandbox Code Playgroud)

oracle plsql mybatis

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

使用Spring和Angular进行Html5路由

我正在尝试使用Spring-boot和Angular 1.5实现HTML5路由,遵循本文.

在某些时候,我需要使用这样的控制器将所有角度路径重定向到基本路径:

@Controller
 public class UrlController {
  // Match everything without a suffix (so not a static resource)
  @RequestMapping(value = "/{path:[^\\.]*}"))
  public String redirect(HttpServletRequest request) {
    // Forward to home page so that route is preserved.
    return "forward:/";
  }
}
Run Code Online (Sandbox Code Playgroud)

正则表达式匹配大多数URL,如仪表板,搜索等:

 2016-08-05 16:39:58 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping:306 - Looking up handler method for path /dashboard
 2016-08-05 16:39:58 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping:313 - Returning handler method UrlController.redirect(javax.servlet.http.HttpServletRequest,java.lang.String)]
 2016-08-05 16:39:58 DEBUG o.s.b.f.s.DefaultListableBeanFactory:251 - Returning cached instance of singleton bean 'urlController'
 2016-08-05 16:39:58 DEBUG …
Run Code Online (Sandbox Code Playgroud)

java spring angularjs

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

LazyInitializationException 使用带有 Spring HATEOAS 的补丁添加

我有一个实体 ElementType,它有一组 EquipmentCodes:

@Entity 
@Table(name = "ELEMENT_TYPES")
public class ElementType extends AbstractEntity<Long> {

@OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
@JoinColumn(name= "ELEM_TYPE_ID")
private Set<EquipmentCode> equipmentCodes;

}
Run Code Online (Sandbox Code Playgroud)

我将这两个类公开为具有存储库的休息资源:

@RepositoryRestResource(path = "elementTypes", collectionResourceRel = "elementTypes")
@Transactional
public interface ElementTypeRepository extends CrudRepository<ElementType, Long> {}
Run Code Online (Sandbox Code Playgroud)

现在如果我尝试一些操作,比如

获取https://localhost:8080/api/elementTypes/40529090

或 PATCH 发送

{
   "equipmentCodes" : [
   "https://localhost:8080/api/equipmentCodes/40529100"
    ]
}
Run Code Online (Sandbox Code Playgroud)

然而,如果我尝试向现有设备添加新的设备代码,它似乎工作正常:

 [
    {
     "op": "add",
     "path": "/equipmentCodes",
     "value": [
       "https://localhost:8080/api/equipmentCodes/40529099"
    ]
    }
]
Run Code Online (Sandbox Code Playgroud)

我明白了

org.hibernate.LazyInitializationException:无法延迟初始化集合,无法初始化代理 - 无会话,位于 org.springframework.data.rest.webmvc.json.patch.JsonLateObjectEvaluator.evaluate(JsonLateObjectEvaluator.java:45)

关于问题是什么的任何提示吗?我使用“add”的方式有问题还是Spring配置有问题?

编辑:这可能是一个语法错误,像这样我没有得到例外:

 [
    {
     "op": "add",
     "path": "/equipmentCodes",
     "value": …
Run Code Online (Sandbox Code Playgroud)

rest spring patch lazy-loading hateoas

5
推荐指数
0
解决办法
153
查看次数

如何在Ext.panel.Tool中使用字体awesome

我需要自定义一个Ext.panel.Tool,从网格标题中的字体awesome中显示图标'fa fa-file-excel-o'.按照我在网上找到的,我已经宣布了这个工具:

    header: {
    itemPosition: 1, // after title before collapse tool
    items: [{
        xtype: 'tool',
        type: 'export',
        cls:'component-tool-export',
        handler: 'doExportData'
    }]
    },
Run Code Online (Sandbox Code Playgroud)

和css:

.component-tool-export .x-tool-export{
  background-image:none !important;
  content: "\f1c3" !important;
}
Run Code Online (Sandbox Code Playgroud)

该工具在那里,我可以点击它,但不显示图标.任何人都可以给我一些提示来解决这个问题吗?

extjs font-awesome extjs6

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