`
inlhx
  • 浏览: 49932 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Spring 外部注入Bean (JAX-WS)

 
阅读更多

      最近在SpringMvc中通过JAX-WS 来实现webservice,但是由于webservice没有在Spring容器中,所以需要Spring的dao,通过标签@Autowired 等方式得到的都是null 那么可以使用以下两种方式得到bean:

 

 

第一种方法(spring4.0测试通过):

web.xml注册

 <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>

 调用方法

接口 obj=(接口)ContextLoaderListener.getCurrentWebApplicationContext().getBean("Bean名称");

 

如果不知道Bean名称可以全部列出来看看:

String []strs= ContextLoaderListener.getCurrentWebApplicationContext().getBeanDefinitionNames();

for(int i=0;i<strs.length;i++){
         //   System.out.println(strs[i]);
        }

 

第二种方法:

第一种方法简单很多,但是如果不行,还可以使用下面这种方法

首先写一个静态类

import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import org.springframework.web.context.WebApplicationContext;
import org.springframework.web.context.support.WebApplicationContextUtils;

public class WebContextSpringBeanFactory extends javax.servlet.http.HttpServlet {

	public static WebApplicationContext webAppContext;

	public void init(ServletConfig config) throws ServletException {

		WebApplicationContext webAppContext = WebApplicationContextUtils.getWebApplicationContext(config.getServletContext());
		this.webAppContext = webAppContext;

	}

	/**
	 *  
	 * @param beanName
	 * @return
	 */
	public static Object getBean(String beanName) {
		System.out.println(webAppContext);
		return webAppContext.getBean(beanName);

	}

}

 

配置web.xml

<servlet>
		<servlet-name>WebContextSpringBeanFactory</servlet-name>
		<servlet-class>WebContextSpringBeanFactory</servlet-class>
		<load-on-startup>2</load-on-startup>
	</servlet>

 如何使用?很简单:

接口 obj=(接口)WebContextSpringBeanFactory.getBean("你的Bean");

 

 

1
1
分享到:
评论

相关推荐

    Spring3_JAX-WS

    在Spring框架中集成JAX-WS,可以利用Spring的依赖注入(DI,Dependency Injection)和AOP(面向切面编程)特性,提高代码的可维护性和可测试性。例如,服务实现类可以作为Spring的bean,这样就可以注入其他依赖,如...

    jax-ws与spring整合jar包下载

    JAX-WS是用于创建和消费SOAP Web服务的标准API,而Spring则是一个广泛使用的轻量级应用框架,提供依赖注入、AOP(面向切面编程)等功能。当我们在一个Spring环境中集成JAX-WS来实现Web服务时,需要对两者进行整合,...

    JAX-WS + Spring 实现webService示例.docx

    这个示例将帮助我们理解如何在Spring环境中创建、配置和部署JAX-WS服务,同时利用Spring的依赖注入(Dependency Injection,DI)特性。 1. 项目文件夹结构 项目的最终文件夹结构对于组织和管理代码至关重要。通常,...

    JAX-WS + Spring 实现webService示例

    **JAX-WS + Spring 实现Web Service示例** 在现代企业级应用开发中,Web Service作为一种跨平台、跨语言的通信方式,被广泛用于不同系统间的交互。本示例将详细阐述如何利用Java API for XML Web Services (JAX-WS)...

    spring+jax-ws+手写连接池

    接着,JAX-WS是Java平台上的Web服务标准,它允许开发者创建符合WS-I基本Profile的SOAP服务。在本项目中,我们可能会创建一个JAX-WS服务端点,通过定义一个接口并使用注解来标记方法,使其成为Web服务的暴露点。...

    soap-sample:使用 Spring Framework 的 JAX-WS(SOAP) 示例应用程序

    JAX-WS 与 Spring 框架的示例应用程序 该项目提供了两个示例应用程序。 使用 Spring 框架 + JAX-WS(Apache CXF) 使用 Spring Framework + JAX-WS(JDK HTTP Server) 主要框架和库 此示例应用程序使用 TERASOLUNA ...

    java_webservice_JAX-RS.zip_cxf_jax_jax-rs_spring cxf

    2. 配置Spring:定义服务bean,并设置其在Spring上下文中的行为。 3. 配置CXF:在web.xml中添加CXF Servlet或监听器,指定Spring配置文件。 4. 打包和部署:将服务打包成WAR文件,部署到支持Servlet的服务器上。 **...

    springjax-ws

    接下来,项目中的"SpringMybatis"可能包含了Spring的配置文件,如`applicationContext.xml`,用于定义bean的定义和依赖注入。这些配置可能包括Spring JAX-WS的端点配置、MyBatis的SqlSessionFactory和...

    Jaxws+Spring整合实例

    这通常通过在Spring配置文件中声明服务bean,然后在JAX-WS中引用这个bean来实现。这样,Web服务的实例可以在Spring容器中进行依赖注入,提高了代码的可测试性和可维护性。 4. **实现步骤**: - 定义服务接口:使用...

    webservice-simple-example

    这个项目旨在展示如何在实际开发中创建、部署和调用基于 JAX-WS 的 Web 服务,并结合 Spring 提供的依赖注入和管理能力。 【描述】中的 "jax-ws 与 spring 整合的简单例子" 提到的核心技术是 JAX-WS 和 Spring。JAX...

    Spring-JAXWS-CXF:Spring with apache CXF intigration for JAX-WS

    本教程将深入探讨如何在Spring框架中整合Apache CXF来构建JAX-WS Web服务。 首先,理解Spring和CXF的整合意义。Spring框架以其依赖注入(Dependency Injection, DI)和面向切面编程(Aspect-Oriented Programming, ...

    spring-ws-cxf-server.rar

    本项目"spring-ws-cxf-server.rar"是一个综合性的示例,展示了如何利用Spring框架、Apache CXF、MyBatis以及MySQL数据库,构建一个能够处理XML和JSON格式数据的服务器端工程,并实现客户端的交互访问。接下来,我们...

    webservice详细例子

    本示例将深入探讨`jax-ws`与`Spring`框架的整合,这在企业级开发中非常常见,因为两者结合可以提供灵活、高效的Web服务解决方案。 首先,让我们理解`JAX-WS`(Java API for XML Web Services)。它是Java平台上的...

    cxf jax-rs 配置演示程序

    【标题】"CXF JAX-RS 配置演示程序" 在Java世界中,CXF是一个流行的开源服务框架,它支持Web服务(如SOAP)和RESTful服务(JAX-RS)。本配置演示程序旨在展示如何将CXF与JAX-RS集成到您的开发环境中,以构建高效、...

    springwebservice

    本项目“springwebservice”聚焦于Spring与MyBatis的集成,并演示了如何结合JAX-WS来创建Web服务。让我们深入探讨这些技术及其相互作用。 首先,Spring是一个开源的Java框架,它的主要目标是简化Java企业级应用的...

    webservice+spring的一个小例子

    在Spring中配置JAX-WS,你需要创建一个Spring配置文件,声明一个`WebServiceTemplate` bean,用于发送和接收SOAP消息。然后,你可以定义一个服务接口和其实现类,使用`@WebService`注解标记服务接口,并将实现类绑定...

    webservice,通过spring mybiatis 访问数据库mysql

    在Spring框架中,可以使用Spring-WS或者JAX-WS来实现。Spring-WS提供了一个基于XML Schema的 Contract-First 方法,而JAX-WS则是标准的Java API,更易于使用。项目中,我们可能使用了Spring-WS来创建服务端接口,并...

    spring4.1.6 cxf1.2.18

    这里你可以设置服务地址、绑定、WS-Security 等属性。 4. **使用 Spring 容器管理服务实例**:通过在服务实现类上添加 `@Component` 或 `@Service` 注解,将其实例化并由 Spring 容器管理。这样,你可以在其他 ...

    webservice所需jar 包含spring的jar

    - spring-ws-support:提供额外的功能,如WS-Security、WS-Addressing等。 - 如果是RESTful服务,可能还需要spring-boot-starter-web、spring-boot-starter-data-jpa等其他启动器的jar包。 在压缩包文件名...

    mpaf-spring-boot-demo

    概述 使用 Spring Boot 的 Metafour PAF 服务演示项目。... 使用 Spring Boot 的 JAX-WS SOAP 服务(代码优先)。 0.0.1-M4 使用 SOAPHandler 并通过 Spring Boot 进行日志记录。 JAX-WS commons - JAX-WS RI 的 S

Global site tag (gtag.js) - Google Analytics