问题列表 - 第47181页

在JPA + Spring中发生异常后回滚事务

我在下面使用HIbernate和Spring和JPA。当引发PersistenceException时,我想捕获它并返回错误消息,以便它不会传播到调用者。

@Transactional
public String save(Object bean) {
    String error = null;

    try {
        EntityManager entityManager = getEntityManager();

        for (int i = 0, n = entities.size(); i < n; i ++) {
            entityManager.merge(entities.get(i));
        }
    }
    catch (PersistenceException e) {
        error = e.getMessage();
    }

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

但是我得到一个异常,说javax.persistence.RollbackException: Transaction marked as rollbackOnly.我需要在异常之后回滚事务,但是当我捕获到异常并且不想重新抛出该异常时,如何回滚它呢?

java spring hibernate jpa

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

如何UTF-8编码字符/字符串

我正在使用Twitter API库将状态发布到Twitter.Twitter要求帖子采用UTF-8编码.该库包含一个URL编码标准字符串的函数,该函数适用于所有特殊字符,例如!@#$%^&*(),但是对重音字符(和其他UTF-8)的编码不正确.

例如,'é'转换为'%E9'而不是'%C3%A9'(它几乎只转换为十六进制值).是否有内置函数可以输入类似'é'的内容并返回类似'%C9%A9'的内容?

编辑:我是UTF-8的新手,以防我要求的内容毫无意义.

编辑:如果我有

string foo = "bar é";
Run Code Online (Sandbox Code Playgroud)

我想把它转换成

"bar %C3%A9"
Run Code Online (Sandbox Code Playgroud)

谢谢

c++ string twitter utf-8 character-encoding

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

调用StartActivity时获取空白屏幕()

在此先感谢您的努力.

我有一个围绕ListActivity扩展类的应用程序.在应用程序启动之前,我想检查用户是否已注册,如果没有告诉他并从他那里获得一些信息.所以,我试图在OnCreate()方法中调用StartActivity.当它加载时,我得到了一个大黑屏.我认为它可能与在OnCreate中运行有关,所以我让Activity像往常一样启动,我试图在OnClick事件中运行它,我得到了相同的结果.在这两种情况下,如果我按下escape,那个Window就会消失,主应用程序窗口会回来.

以下是我称之为新活动的行

Intent emailIntent = new Intent(this, EmailAddressGetter.class);
this.startActivity(emailIntent);
Run Code Online (Sandbox Code Playgroud)

这是该类的代码

/**
 * 
 */
package com.kosherapp;

import android.app.Activity;
import android.os.Bundle;
import android.widget.Toast;

/**
 * @author Josh
 * 
 */
public class EmailAddressGetter extends Activity {

    public void OnCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.emailinput);
    }

}
Run Code Online (Sandbox Code Playgroud)

这是emailinput xml内容

<?xml version="1.0" encoding="utf-8"?>
<TextView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:background="#ffffff"
    android:textColor="#000000"
    android:layout_height="fill_parent"
    android:layout_width="fill_parent"
    android:text="hello"
>
</TextView>
Run Code Online (Sandbox Code Playgroud)

而且,这是明确的内容

<?xml version="1.0" encoding="utf-8"?>
<manifest
    xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.kosherapp"
    android:versionCode="1"
    android:versionName="1.0"
>
    <uses-permission
        android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission
        android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission
        android:name="android.permission.INTERNET" />
    <uses-permission
        android:name="android.permission.CALL_PHONE" />

    <application …
Run Code Online (Sandbox Code Playgroud)

android android-manifest android-emulator android-layout

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

与cuda相关的libstdc ++.so.6的链接器问题

今天我遇到了链接我编译的cuda东西的问题.

我有一个最新的debian测试w/2.6.32-3-amd64.

我整天在我的代码上工作.不时编译.没问题.但是经过一次小的代码更改后我得到了以下错误:

gcc -o pa  CUDA.o  histogram256.o  histogram64.o  main.o  -lrt -lm -lcudart  -I. -I/data/cuda/include -I/data/cuda/C/common/inc -L/data/cuda/lib64
/usr/bin/ld: main.o: undefined reference to symbol 'std::basic_ifstream<char, std::char_traits<char> >::close()@@GLIBCXX_3.4'
/usr/bin/ld: note: 'std::basic_ifstream<char, std::char_traits<char> >::close()@@GLIBCXX_3.4' is defined in DSO /usr/lib64/libstdc++.so.6 so try adding it to the linker command line
/usr/lib64/libstdc++.so.6: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)

我改回了代码,但错误仍然存​​在.

lib就是应该存在的地方.(/ usr/lib64链接到/ usr/lib)

ldd /usr/lib/libstdc++.so.6
    linux-vdso.so.1 =>  (0x00007fff31fff000)
    libm.so.6 => /lib/libm.so.6 (0x00007f15f625a000)
    libc.so.6 => /lib/libc.so.6 (0x00007f15f5ef9000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f15f680d000)
    libgcc_s.so.1 => /lib/libgcc_s.so.1 …
Run Code Online (Sandbox Code Playgroud)

c++ cuda libstdc++

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

定时Fortran多线程程序

我有一个调用多线程例程的Fortran 90程序。我想从调用例程中计时该程序。如果使用cpu_time(),最终将所有线程(本例中为8)的cpu_time加在一起,而不是程序运行的实际时间。该etime()例程似乎也是如此。关于如何计时该程序(不使用秒表)的任何想法?

time fortran openmp performance-testing

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

Nhibernate 3和LINQ

我正在将一些代码从Nhibernate 2.x转换为3.0.之前,我正在使用LINQ插件,以获得LINQ支持.我的理解是在3.0中它作为一流的功能进入了.所以我的问题是,我曾经有这个:

return new List<T>(session.Linq<T>().Where(where));
Run Code Online (Sandbox Code Playgroud)

新语法看起来如何?我浏览了nhib 3文档和教程,并没有看到任何关于linq的东西,所以我找不到一个例子来模式.

linq nhibernate

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

设置约束可延迟对PostgreSQL事务不起作用

情况就是这样:我有两个表,其中一个引用另一个表(例如,table2引用table1).在创建这些表时,我确实将外键约束设置为DEFERRABLE,将ON UPDATE和ON DELETE子句设置为NO ACTION(这是默认值).

但是,当运行下面的事务时,我收到以下错误.

交易:

START TRANSACTION;
SET CONSTRAINTS ALL DEFERRED;
UPDATE table1 SET blah blah;
UPDATE table2 SET blah blah;
COMMIT;
Run Code Online (Sandbox Code Playgroud)

错误:

ERROR:  update or delete on table "table1" violates foreign key constraint "table1_column_fkey" on table "table2"
DETAIL:  Key (column1)=(blahblah) is still referenced from table "table2".
Run Code Online (Sandbox Code Playgroud)

和桌子结构:

CREATE TABLE table1(
    column1 CHAR(10),
    [...]
    PRIMARY KEY (column1)
);

CREATE TABLE table2(
    primkey CHAR(9),
    [...]
    column2 CHAR(10) NOT NULL,
    PRIMARY KEY(primkey),
    FOREIGN KEY(column2) REFERENCES table1(column1) DEFERRABLE
);
Run Code Online (Sandbox Code Playgroud)

我想要做的是在事务进行时推迟外键检查,直到它提交为止.我只是看不出为什么这个错误会返回,我怎么能让事务工作.

postgresql transactions foreign-keys deferred

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

Rails - 强制字段大写并唯一验证

机场有四个字母的ICAO代码.按照惯例,它们总是大写的.我正在创建一个用于接收用户输入的表单,但是此表单需要能够以大小写混合的形式接受用户输入,并防止它们创建欺骗.

:uniqueness当然,默认情况下区分大小写.我想出了如何在保存之前将用户的输入转换为大写,但问题是这似乎是后验证,而不是预验证.

例如,如果已经有ICAO的机场KLAX,用户可以输入klax,它将被验证为唯一,然后转换为大写并存储,从而产生重复.

这是我目前的型号代码.

class Airport < ActiveRecord::Base
  validates :icao, :name, :lat, :lon, :presence => true
  validates :icao, :uniqueness => true

  before_save :uppercase_icao

  def uppercase_icao
    icao.upcase!
  end
end
Run Code Online (Sandbox Code Playgroud)

validation activerecord ruby-on-rails ruby-on-rails-3

10
推荐指数
4
解决办法
9510
查看次数

混合 JPQL 和 CriteriaQuery

是否可以混合 JPQL 和CriteriaQuery

我有一个String包含 JPQL 中的 where 条件的一个,以及一个CriteriaQuery已经构建并从其他地方获取的。我想知道是否可以添加whereString条件CriteriaQuery.where()。where 条件可以是多个条件“and-ed”/“or-ed”在一起。

我可以在不解析 where 条件的情况下执行此操作吗String

java jpa

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

仅在调试版本中包含图形?

有没有一种简单的方法可以确保使用Configuration开关在我的应用程序的发布版本中不包含资源?

它从未在发布版本中使用,但考虑到它的本质,我宁愿甚至不包括它.包括常用于表示软件错误的图像似乎是商店拒绝诱饵.

澄清:我知道如何在应用程序中不使用该图像.我想要做的是在构建发布配置时确保图像在.app包中不均匀.我不希望App Store审阅者浏览该包并说"嘿!一个bug图标!我怎么能得到它?因为我无法弄明白,必须有一些秘密功能."

iphone build ios

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