小编Jas*_*son的帖子

MySQL交叉连接查询的Hibernate异常

我正在尝试执行批量删除对象Feature,它与另一个类FeatureMetadata具有鸟类ManyToOne关系.我抛出了一个SQLGrammerException.

我正在使用的hql:

String hql = "delete from Feature F where F.featuresMetadata.stateGeoId = :stateGeoId";
Run Code Online (Sandbox Code Playgroud)

启用show SQL,生成以下内容:

 delete from FEATURE cross join FEATURESMETADATA featuresme1_ where STATEGEOID=?
Run Code Online (Sandbox Code Playgroud)

直接在db客户端中运行SQL会产生以下异常:

 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'cross join FEATURESMETADATA featuresme1_ where stategeoid='01'' at line 1
Run Code Online (Sandbox Code Playgroud)

由于生成的SQL抛出异常,我尝试将方言从MySQL5InnoDBDialect更改为MySQLInnoDBDialect,但没有变化.

有人可以帮忙吗?

mysql hibernate

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

MongoDB:Mapreduce:reduce-> multiple不支持

我有一个包含大约5个天文目录的MongoDB集合(名为"目录").其中一些目录相互引用,因此其中一个文档可能如下所示:

{ "_id" : ObjectId("4ec574a68e4e7a519166015f"), "bii" : 20.9519, "class" : 2480, "cpdname" : "CPD -21 6109", "decdeg" : -21.8417, "decpm" : 0.004, "dmname" : "-21 4299", "hdname" : "HD 145612", "lii" : 352.8556, "name" : "PPM 265262", "ppmname" : "PPM 265262", "radeg" : 243.2005, "rapm" : 0.0012, "vmag" : 9.6, "xref" : [ ] }
Run Code Online (Sandbox Code Playgroud)

我想要做的是使用mapreduce将诸如"hdname","ppmname"等字段移动到外部参照阵列中(然后取消设置它们).

所以我尝试一次一个,从hdname字段开始.这是map和reduce函数:

map = function() {
    for (var hdname in this.hdname) {
        emit(this._id,this.hdname);
    }
}


reduce = function(key, values) {
    var result = [];
    for …
Run Code Online (Sandbox Code Playgroud)

mongodb

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

从JavaScript调用Managed Bean方法

我有一个应用程序与客户端图像映射定义了多个部分.我需要从<area>onclick属性调用Managed Bean中的方法.

这不起作用:

<area id="ReviewPerson" shape="rect" coords="3, 21, 164, 37" href="#" 
    onclick="#{personBean.method}" alt="Review Person" id="reviewPersonArea"
    title="Review Person" />
Run Code Online (Sandbox Code Playgroud)

由于我的手被绑在图像映射上(不幸的是),如何在<area>标记内调用托管bean方法?

jsf oracle-adf

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

将SQL左外连接查询转换为JPA准则

我有以下本机SQL查询,我试图转换为JPA标准:

select et.* from t_empl_tx et, t_dept d 
where et.assigned_dept = d.dept (+)
  and et.employee_id = :employee_id
  and (et.start_date >= d.dept_est_date and
       et.start_date <= d.dept_close_date or
       et.start_date is null or
       d.dept is null)
Run Code Online (Sandbox Code Playgroud)

(注意,在这种情况下,(+)大致相当于左外连接.是的,我知道它表示可选表等等).

这是我对代码的尝试:

EntityManager entityManager = getEntityManager();
CriteriaBuilder criteriaBuilder = entityManager.getCriteriaBuilder();
CriteriaQuery<EmployeeTransaction> criteriaQuery = criteriaBuilder.createQuery(EmployeeTransaction.class);
Root<EmployeeTransaction> root = criteriaQuery.from(EmployeeTransaction.class);

    // this line bombs!
Join<EmployeeTransaction, Department> join = 
    root.join(EmployeeTransaction_.assignedDepartment).join(Department_.id).join(DepartmentCompositeId_.department, JoinType.LEFT);

List<Predicate> predicates = new ArrayList<>();

predicates.add(criteriaBuilder.equal(root.get(EmployeeTransaction_.id).get(EmployeeTransactionCompositeId_.employeeId), employeeId));
predicates.add(criteriaBuilder.or(
    criteriaBuilder.and(
    criteriaBuilder.greaterThanOrEqualTo(root.<Date>get(EmployeeTransaction_.requestedStartDate), join.get(Department_.id).<Date>get(DepartmentCompositeId_.departmentCreationDate)),
    criteriaBuilder.lessThanOrEqualTo(root.<Date>get(EmployeeTransaction_.requestedStartDate), join.<Date>get(Department_.departmentCloseDate))
    ),
    criteriaBuilder.isNull(root.get(EmployeeTransaction_.requestedStartDate)),
    criteriaBuilder.isNull(join.get(Department_.id).get(DepartmentCompositeId_.departmentCreationDate))
));

criteriaQuery.select(root).where(predicates.toArray(new Predicate[]{})); …
Run Code Online (Sandbox Code Playgroud)

java jpa

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

GWT中的同步RPC调用

(仅此标题应该让人们从木制品中走出来用棍棒打击我,但是听我说话).

我有一个用例,我需要从异步调用返回一个值.(我正在使用GWT-Platform,但概念是相同的.)我声明了最终的JavaScriptObject数组,然后在AsyncCallback中分配了值.但是,我需要返回值,并且该方法在AsyncCallback完成之前返回.因此,我需要以某种方式阻止,直到AsyncCallback完成.我需要在另一个方法中返回值,或者我只是在onSuccess()中执行我需要的操作.

我已经尝试过循环,定时器和其他一些没有运气的方法.有人可以帮忙吗?

@Override
public JavaScriptObject doGetWhereAmIMarker(final double lng, final double lat) {

    final JavaScriptObject[] markerArray = new JavaScriptObject[1];  // ugly hack, I know
    dispatch.execute(new GetLocationDescriptionsAction(lng, lat), new AsyncCallback<GetLocationDescriptionsResult>() {
        @Override
        public void onFailure(Throwable caught) {
            caught.printStackTrace();
        }

        @Override
        public void onSuccess(GetLocationDescriptionsResult result) {
            Map<String, Location> resultMap = result.getResult();
            StringBuffer message = new StringBuffer();
            for (String key : resultMap.keySet()) {
                message.append(key).append(": ").append(resultMap.get(key)).append("\n");
            }

            Map tempMap = new HashMap();
            tempMap.put("TITLE","Location Information");
            tempMap.put("LAT", lat);
            tempMap.put("LNG", lng);
            tempMap.put("CONTENTS", message.toString());

            JavaScriptObject marker = GoogleMapUtil.createMarker(tempMap); …
Run Code Online (Sandbox Code Playgroud)

java gwt jsni

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

Java字符串数字比较器

我有一个方法返回需要排序的String列表.但是,我遇到了旧的字符串编号排序问题,并想知道是否有人可以协助比较器实现或指向我的方向.

该列表将返回一个列表:

State Lower Legislative District 1
State Lower Legislative District 11
State Lower Legislative District 12
...
State Lower Legislative District 2
...
State Lower Legislative District 100
...
State Upper Legislative District 1
State Upper Legislative District 11
...
Run Code Online (Sandbox Code Playgroud)

所以,首先我需要做一个基本的String排序,但是我需要按数字排序.要排序的数字应该总是跟踪,可能是2或3位数.

(编辑)我最初的想法是在空格上拆分字符串,在数字部分运行StringUtils.isNumeric,然后排序.然而,这对我来说似乎有点困难.

有人可以帮忙吗?

java natural-sort

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

JPA和装饰模式

我正在尝试创建一个部分依赖于人口普查部门TIGER/Lines数据Shapefile的应用程序,它具有此处定义的记录布局:

http://www.census.gov/geo/www/tiger/tgrshp2010/TGRSHP10AA.pdf

我的想法是使用Decorator模式来创建一个基本Feature类,其中包含所有数据类型共有的字段,然后通过各个要素类型(States,Counties,Congressional Districts等)的装饰器模式扩展它.但是,我计划使用Google App Engine进行托管,因此我必须通过JDO或JPA来完成此操作.我更喜欢JPA.

我可以映射装饰物吗?我的想法是基本要素类将使用@Entity进行注释,然后扩展将包含特定于装饰对象的映射字段.由于GAE数据存储区不是RDBMS,我认为我可以逃脱它.

java jpa decorator google-cloud-datastore

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

在UIBinder中居中GWT元素

我试图将一个TabLayoutPanel置于一个uibinder中,并且没有任何运气.正如你在下面看到的,我已经尝试了我能想到的每一个CSS技巧.有人可以帮忙吗?

<ui:style>

    .gwt-TabLayoutPanel {
        vertical-align: middle;
        text-align: center;
        margin-left: auto;
        margin-right: auto;
        border-top: 1px solid #666;
        border-left: 1px solid #999;
        border-right: 1px solid #666;

    }
</ui:style>

<g:VerticalPanel ui:field="userInterfacePanel" width="100%">
    <mapmaker:MapBox ui:field="mapBox"/>
    <g:TabLayoutPanel barHeight="20" ui:field="interfaceTabs" height="300px" width="80%" >
        <g:tab>
            <g:header>Lines</g:header>
            <g:Label>Select Line Data Here</g:Label>
        </g:tab>
        <g:tab>
            <g:header>Features</g:header>
            <g:Label>Select Features Data Here</g:Label>
        </g:tab>
        <g:tab>
            <g:header>Help</g:header>
            <g:Label>Help goes here</g:Label>
        </g:tab>
    </g:TabLayoutPanel>
    <g:HorizontalPanel>
        <g:Button>Generate KML</g:Button>
        <g:Button>Generate Shapefile</g:Button>
    </g:HorizontalPanel>
</g:VerticalPanel>
Run Code Online (Sandbox Code Playgroud)

gwt uibinder

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

Weblogic 10.3.5覆盖Spring版本

我正在使用Oracle的OEPE发行版开发一个Web应用程序,包括Weblogic服务器10.3.5.WLS包含自己的Spring版本,似乎是2.5.6.SEC01.但是,我们正在尝试使用特定于3.1版本的Spring和Spring Security功能.

Maven POM将Spring Version定义为3.1.1.RELEASE属性(将该属性插入到各个部分,即:

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>${spring.version}</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

我在weblogic.xml中尝试了两种不同的方法来排除内置的Spring(一个在下面注释掉,但请放心,我已经尝试了两种方法):

<wls:container-descriptor>
    <wls:prefer-application-packages>
        <wls:package-name>com.oracle.ojdbc16.*</wls:package-name>
        <wls:package-name>antlr.*</wls:package-name>
        <wls:package-name>javax.persistence.*</wls:package-name>
        <wls:package-name>org.apache.commons.*</wls:package-name>
        <wls:package-name>org.springframework.*</wls:package-name>
        <wls:package-name>org.hibernate.*</wls:package-name>
        <wls:package-name>org.apache.xerces.*</wls:package-name>
    </wls:prefer-application-packages>
    <!-- <wls:prefer-web-inf-classes>true</wls:prefer-web-inf-classes> -->
</wls:container-descriptor>
Run Code Online (Sandbox Code Playgroud)

使用我自己的Spring版本,我需要做什么?

spring weblogic

7
推荐指数
2
解决办法
9776
查看次数

Eclipse(Luna)慢

我最近从Indigo"升级"到Luna(Oracle OEPE安装).请注意升级期间的报价.

不幸的是,事情是缓慢的.

我合作的项目是一个maven多模块项目.构建工作区操作大约需要3-4分钟,而更新Navigator Content Viewer(无论是什么)可能需要更长时间.

插件: - Subclipse - M2E - JRebel

在事情发生之前改善表现的任何想法都让我精神病?

eclipse

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