SSH 问题 应该是配置文件出错了 但是找不到哪里出错

时间:2021-11-10 11:23:31
HTTP Status 500 -

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

Unable to instantiate Action, AdminAction,  defined for 'login' in namespace '/'Error creating bean with name 'AdminAction': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [vmta.banckend.service.intf.AdminService] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
com.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:318)
com.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:399)
com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:198)
org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58)
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:475)
org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)

root cause

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'AdminAction': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [vmta.banckend.service.intf.AdminService] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:307)
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1106)
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:313)
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1098)
com.opensymphony.xwork2.spring.SpringObjectFactory.buildBean(SpringObjectFactory.java:141)
com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:150)
com.opensymphony.xwork2.ObjectFactory.buildAction(ObjectFactory.java:120)
com.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:299)
com.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:399)
com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:198)
org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58)
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:475)
org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)

root cause

org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [vmta.banckend.service.intf.AdminService] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:952)
org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:821)
org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:735)
org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:439)
org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:417)
org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:559)
org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:159)
org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:87)
org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:304)
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1106)
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:313)
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1098)
com.opensymphony.xwork2.spring.SpringObjectFactory.buildBean(SpringObjectFactory.java:141)
com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:150)
com.opensymphony.xwork2.ObjectFactory.buildAction(ObjectFactory.java:120)
com.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:299)
com.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:399)
com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:198)
org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58)
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:475)
org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)

note The full stack trace of the root cause is available in the Apache Tomcat/7.0.10 logs.
Apache Tomcat/7.0.10

17 个解决方案

#1


beans.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:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
           http://www.springframework.org/schema/context
           http://www.springframework.org/schema/context/spring-context-2.5.xsd
           http://www.springframework.org/schema/tx
           http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
           http://www.springframework.org/schema/aop
           http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">
<context:annotation-config />
<context:component-scan base-package="vmta.banckend" />
<!--<tx:annotation-driven transaction-manager="txManager" />-->

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
          <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
          <property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"></property>
          <property name="username" value="vmta"></property>
          <property name="password" value="eservice"></property> 
          <property name="maxActive" value="100"></property>
<property name="maxIdle" value="30"></property>
<property name="maxWait" value="500"></property>
<property name="defaultAutoCommit" value="true"></property>
     </bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource" ref="dataSource" />

<property name="packagesToScan">
<list>
<value>vmta.banckend.bean</value>
</list>
</property>

<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.OracleDialect</prop>
<prop key="hibernate.show_sql">true</prop>
</props>
</property>

</bean>

<bean id="txManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>

<aop:config>
<aop:pointcut id="bussinessservice"
expression="execution(public * vmta.banckend.service..*.*(..))" />
<aop:advisor advice-ref="txAdvice" pointcut-ref="bussinessservice" />
</aop:config>

<tx:advice id="txAdvice" transaction-manager="txManager">
<tx:attributes>
<!--<tx:method name="get*" read-only="true" />-->
<tx:method name="add*" />
<tx:method name="delete*" />
<tx:method name="update*" />
<tx:method name="read*" />
</tx:attributes>
</tx:advice>

<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory" ref="sessionFactory" />
</bean>


</beans>

#2


发报错的同时还是发一下配置文件吧。

#3


web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
  <display-name></display-name>
  <welcome-file-list>
    <welcome-file>login.jsp</welcome-file>
  </welcome-file-list>
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:beans.xml</param-value>
  </context-param>
  <filter>
    <filter-name>opensessionInView</filter-name>
    <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>opensessionInView</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
  <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
<filter>  
        <filter-name>encoding</filter-name>  
        <filter-class>  
            org.springframework.web.filter.CharacterEncodingFilter  
        </filter-class>  
        <init-param>  
            <param-name>encoding</param-name>  
            <param-value>UTF-8</param-value>  
        </init-param>  
    </filter>  
    <filter-mapping>  
        <filter-name>encoding</filter-name>  
        <url-pattern>/*</url-pattern>  
    </filter-mapping> 
</web-app>
   

#4


有人吗 。。求帮助~~~ SSH 问题 应该是配置文件出错了 但是找不到哪里出错

#5


 Error creating bean with name 'AdminAction': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [vmta.banckend.service.intf.AdminService] found for dependency

AdminAction配置中依赖AdminService类型错误,检查这个文件的配置

#6


这个文件的配置?我的配置文件就2个啊。。。。 东西都在上面了 本来我是连接mysql数据库的 类似这样的配置都可以执行 现在改为Oracle 修改了一些配置后 就报错了

#7


expression="execution(public * vmta.banckend.service. .*.*(..))" />
service后面是不是多了一个点?造成找不到vmta.banckend.service.intf.AdminService?

#8


使用的注解配置?

#9


'AdminAction类片段稍微贴下

#10


AdminAction

@Component("AdminAction")
@Scope("prototype")
public class AdminAction extends ActionSupport{
private AdminService adminService;

public AdminService getAdminService() {
return adminService;
}
@Resource
public void setAdminService(AdminService adminService) {
this.adminService = adminService;
}
private List<ADMIN> user;
private String name;
    private String pwd;
    //登录
public String login() throws Exception{
ADMIN u = new ADMIN();
u.setNAME(name);
u.setPWD(pwd);
user=adminService.login(u);
System.out.println(u.getNAME());
if (user.size()>0) {
          ActionContext.getContext().getSession().put("user", user);
return "1";
}
else
return "0";

}

#11


那个点没关系的 我以前用MySql的时候这样能找到的 

#12


SSH 问题 应该是配置文件出错了 但是找不到哪里出错还有人吗

#13


引用 6 楼 lespk 的回复:
这个文件的配置?我的配置文件就2个啊。。。。 东西都在上面了 本来我是连接mysql数据库的 类似这样的配置都可以执行 现在改为Oracle 修改了一些配置后 就报错了

改什么关键配置了吗?这个错误本质是spring注解依赖时,找不到所匹配的类型

#14


<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
          <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
          <property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"></property>
          <property name="username" value="vmta"></property>
          <property name="password" value="eservice"></property> 
          <property name="maxActive" value="100"></property>
          <property name="maxIdle" value="30"></property>
          <property name="maxWait" value="500"></property>
          <property name="defaultAutoCommit" value="true"></property>
     </bean>

就改了这里  Oracle数据库里的主键好像是number类型的 
@Entity
@Table(name = "B_ADMIN")
public class ADMIN {
   private double ID;
   private String NAME;
   private String PWD;
   private String QX;
   @Id
   @GeneratedValue
我的bean文件 这样有问题吗

#15


仔细观察启动日志,看看能不能找到类似的bean:AdminService。

#16


我重新创建了一个项目 重写了一遍 问题已解决 谢谢各位的帮忙

#17


private AdminService adminService;你应该有一个imp实现类与它对应吧!看你的实现类有没有给@Service("adminService")没有这个,你的service就注入不进去。

#1


beans.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:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
           http://www.springframework.org/schema/context
           http://www.springframework.org/schema/context/spring-context-2.5.xsd
           http://www.springframework.org/schema/tx
           http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
           http://www.springframework.org/schema/aop
           http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">
<context:annotation-config />
<context:component-scan base-package="vmta.banckend" />
<!--<tx:annotation-driven transaction-manager="txManager" />-->

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
          <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
          <property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"></property>
          <property name="username" value="vmta"></property>
          <property name="password" value="eservice"></property> 
          <property name="maxActive" value="100"></property>
<property name="maxIdle" value="30"></property>
<property name="maxWait" value="500"></property>
<property name="defaultAutoCommit" value="true"></property>
     </bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource" ref="dataSource" />

<property name="packagesToScan">
<list>
<value>vmta.banckend.bean</value>
</list>
</property>

<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.OracleDialect</prop>
<prop key="hibernate.show_sql">true</prop>
</props>
</property>

</bean>

<bean id="txManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>

<aop:config>
<aop:pointcut id="bussinessservice"
expression="execution(public * vmta.banckend.service..*.*(..))" />
<aop:advisor advice-ref="txAdvice" pointcut-ref="bussinessservice" />
</aop:config>

<tx:advice id="txAdvice" transaction-manager="txManager">
<tx:attributes>
<!--<tx:method name="get*" read-only="true" />-->
<tx:method name="add*" />
<tx:method name="delete*" />
<tx:method name="update*" />
<tx:method name="read*" />
</tx:attributes>
</tx:advice>

<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory" ref="sessionFactory" />
</bean>


</beans>

#2


发报错的同时还是发一下配置文件吧。

#3


web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
  <display-name></display-name>
  <welcome-file-list>
    <welcome-file>login.jsp</welcome-file>
  </welcome-file-list>
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:beans.xml</param-value>
  </context-param>
  <filter>
    <filter-name>opensessionInView</filter-name>
    <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>opensessionInView</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
  <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
<filter>  
        <filter-name>encoding</filter-name>  
        <filter-class>  
            org.springframework.web.filter.CharacterEncodingFilter  
        </filter-class>  
        <init-param>  
            <param-name>encoding</param-name>  
            <param-value>UTF-8</param-value>  
        </init-param>  
    </filter>  
    <filter-mapping>  
        <filter-name>encoding</filter-name>  
        <url-pattern>/*</url-pattern>  
    </filter-mapping> 
</web-app>
   

#4


有人吗 。。求帮助~~~ SSH 问题 应该是配置文件出错了 但是找不到哪里出错

#5


 Error creating bean with name 'AdminAction': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [vmta.banckend.service.intf.AdminService] found for dependency

AdminAction配置中依赖AdminService类型错误,检查这个文件的配置

#6


这个文件的配置?我的配置文件就2个啊。。。。 东西都在上面了 本来我是连接mysql数据库的 类似这样的配置都可以执行 现在改为Oracle 修改了一些配置后 就报错了

#7


expression="execution(public * vmta.banckend.service. .*.*(..))" />
service后面是不是多了一个点?造成找不到vmta.banckend.service.intf.AdminService?

#8


使用的注解配置?

#9


'AdminAction类片段稍微贴下

#10


AdminAction

@Component("AdminAction")
@Scope("prototype")
public class AdminAction extends ActionSupport{
private AdminService adminService;

public AdminService getAdminService() {
return adminService;
}
@Resource
public void setAdminService(AdminService adminService) {
this.adminService = adminService;
}
private List<ADMIN> user;
private String name;
    private String pwd;
    //登录
public String login() throws Exception{
ADMIN u = new ADMIN();
u.setNAME(name);
u.setPWD(pwd);
user=adminService.login(u);
System.out.println(u.getNAME());
if (user.size()>0) {
          ActionContext.getContext().getSession().put("user", user);
return "1";
}
else
return "0";

}

#11


那个点没关系的 我以前用MySql的时候这样能找到的 

#12


SSH 问题 应该是配置文件出错了 但是找不到哪里出错还有人吗

#13


引用 6 楼 lespk 的回复:
这个文件的配置?我的配置文件就2个啊。。。。 东西都在上面了 本来我是连接mysql数据库的 类似这样的配置都可以执行 现在改为Oracle 修改了一些配置后 就报错了

改什么关键配置了吗?这个错误本质是spring注解依赖时,找不到所匹配的类型

#14


<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
          <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
          <property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"></property>
          <property name="username" value="vmta"></property>
          <property name="password" value="eservice"></property> 
          <property name="maxActive" value="100"></property>
          <property name="maxIdle" value="30"></property>
          <property name="maxWait" value="500"></property>
          <property name="defaultAutoCommit" value="true"></property>
     </bean>

就改了这里  Oracle数据库里的主键好像是number类型的 
@Entity
@Table(name = "B_ADMIN")
public class ADMIN {
   private double ID;
   private String NAME;
   private String PWD;
   private String QX;
   @Id
   @GeneratedValue
我的bean文件 这样有问题吗

#15


仔细观察启动日志,看看能不能找到类似的bean:AdminService。

#16


我重新创建了一个项目 重写了一遍 问题已解决 谢谢各位的帮忙

#17


private AdminService adminService;你应该有一个imp实现类与它对应吧!看你的实现类有没有给@Service("adminService")没有这个,你的service就注入不进去。