小编dru*_*uiz的帖子

自动装配和弹簧注射的问题

解决了

最近我遇到了我正在尝试开发的Spring MVC应用程序的问题.主要问题是我不知道为什么@Autowired注释不能正常工作,这可能是因为我有问题.我将在这里发布我的代码,以便您可以帮助我处理我的问题!非常感谢你们:

web.xml中

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version="2.4">

    <display-name>HelloWorld Application</display-name>
    <description>
        This is a simple web application with a source code organization
        based on the recommendations of the Application Developer's Guide.
    </description>

    <servlet>
        <servlet-name>webDispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>webDispatcher</servlet-name>
        <url-pattern>*.do</url-pattern>
    </servlet-mapping>
    <filter>
        <filter-name>springSecurityFilterChain</filter-name>
        <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>springSecurityFilterChain</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
            /WEB-INF/applicationContext.xml
        </param-value>
    </context-param>

    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
</web-app>
Run Code Online (Sandbox Code Playgroud)

applicationContext.xml中

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
    xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans-4.0.xsd …
Run Code Online (Sandbox Code Playgroud)

java spring-mvc code-injection autowired

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

JPA 查询:java.lang.ClassCastException:[Enum] 无法转换为 java.lang.Enum

我需要一些帮助...

我实际上正在构建一个应用程序并使用 JPA 进行查询,但枚举类型有问题。

我有这个。

public enum SchedulingStatus {

SKIPPED, PENDING_CONFIRMATION, CONFIRMED, SENT, PROCESSING, CANCELLED, FINISHED, FINISHED_WITH_ERRORS, NOT_CONFIRMED_IN_SERVER

}
Run Code Online (Sandbox Code Playgroud)

然后是 FarmIrrigationScheduling.java 类,其中包含许多其他字段以及重要的字段:

@Column
@Enumerated(EnumType.ORDINAL)
private SchedulingStatus status;
Run Code Online (Sandbox Code Playgroud)

然后尝试执行此查询:

TypedQuery<FarmIrrigationScheduling> query = getEntityManager().createQuery(
            "from FarmIrrigationScheduling where farm = :farm AND status not in :statusCollection ORDER BY calculated DESC",
            FarmIrrigationScheduling.class);
    query.setParameter("farm", farm);

    SchedulingStatus[] status = new SchedulingStatus[] { SchedulingStatus.FINISHED,
            SchedulingStatus.FINISHED_WITH_ERRORS, SchedulingStatus.CANCELLED };
    query.setParameter("statusCollection", status);

    return getSingleResult(query);
Run Code Online (Sandbox Code Playgroud)

我收到以下异常:

Caused by: java.lang.ClassCastException: [Lau.com.agrichem.addams.server.model.enums.SchedulingStatus; cannot be cast to java.lang.Enum
at org.hibernate.type.EnumType.nullSafeSet(EnumType.java:239)
at org.hibernate.type.CustomType.nullSafeSet(CustomType.java:170)
at org.hibernate.param.NamedParameterSpecification.bind(NamedParameterSpecification.java:53) …
Run Code Online (Sandbox Code Playgroud)

java enums hibernate jpa

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

标签 统计

java ×2

autowired ×1

code-injection ×1

enums ×1

hibernate ×1

jpa ×1

spring-mvc ×1