小编مري*_*ياة的帖子

杰克逊错误:java.lang.NoClassDefFoundError:com/fasterxml/jackson/core/Versioned

我正在使用Maven-EJB并希望将java对象转换为JSON,我使用Jackson jars lib但是我得到了:

java.lang.ClassNotFoundException:com.fasterxml.jackson.core.Versioned

我在pom.xml文件中添加了这些依赖项:

    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>2.4.0</version>
    </dependency>

    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-core</artifactId>
        <version>2.4.0</version>
    </dependency>

    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-annotations</artifactId>
        <version>2.4.0</version>
    </dependency>

    <dependency>
        <groupId>com.fasterxml.jackson.jaxrs</groupId>
        <artifactId>jackson-jaxrs-json-provider</artifactId>
        <version>2.4.0</version>
    </dependency>

    <dependency>
        <groupId>com.fasterxml.jackson.module</groupId>
        <artifactId>jackson-module-jaxb-annotations</artifactId>
        <version>2.4.0</version>
    </dependency>        
</dependencies>
Run Code Online (Sandbox Code Playgroud)

在Java Facade我写这行来转换:

String json ="";

    try {
         ObjectWriter ow = new ObjectMapper().writer().withDefaultPrettyPrinter();
         json = ow.writeValueAsString(userlist);
    } catch (JsonProcessingException e) {
        throw new BusinessException("error_json");
    }
Run Code Online (Sandbox Code Playgroud)

这是进口:

import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectWriter;

我检查了类路径,并做了很多干净和构建,但没办法,,,同样的异常出现!!

我正在研究NetBeans8和Java 1.7

在此先感谢玛丽亚姆

java json ejb jackson

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

@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW) 不起作用

我需要在 glassfish3.0 上使用 JPA 2.0 和 EJB3.0 删除忽略任何完整性约束的员工列表(即成功删除尚未与任何其他实体相关的实体或跳过与其他实体相关的实体):

我迭代列表并在 try/catch 中的 require_new 事务中调用实体管理器,我希望这将在大事务中打开小嵌套事务,并且我使用 em.flush() 强制更新。

但在相关实体的迭代中它会抛出;

异常 [EclipseLink-4002](Eclipse 持久性服务 - 2.4.2.v20130514-5956486):org.eclipse.persistence.exceptions.DatabaseException 内部异常:com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:无法删除或更新父级row:外键约束失败

并继续到下一个员工,但在提交大事务时,它会回滚并抛出相同的异常!

我希望在新的小事务中抛出/捕获异常,并提交列表其余部分的成功删除的实体...

我错过了什么吗?

编辑:

这是一些代码,Facade中调用实体管理器删除bean的代码,我通过required-new注释了该函数:

 public void deleteEmployeeData(Set<Employees> deleted) throws DatabaseException {

        Iterator itr;
        Employees emp;


        //delete unused recordes 
        try {

            itr = deleted.iterator();

            while (itr.hasNext()) {
                emp = (Employees) itr.next();
                deleteEmployee(emp);                
            }

        } catch (Exception e) {
            e.printStackTrace();
        }

        System.out.println("DONE");
    }

    @TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
    private void deleteEmployee(Employees emp){
        try {
                    this.remove(emp);
                } catch (Exception ex) {
                    System.out.println(ex.getMessage());
                }

    }
Run Code Online (Sandbox Code Playgroud)

java jpa glassfish ejb-3.0

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

标签 统计

java ×2

ejb ×1

ejb-3.0 ×1

glassfish ×1

jackson ×1

jpa ×1

json ×1