首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Web容器外的Java 6中使用Guice 3和JAX-WS

在Web容器外的Java 6中使用Guice 3和JAX-WS的方法如下:

  1. 首先,需要在项目中引入Guice和JAX-WS相关的依赖。可以使用Maven或Gradle来管理依赖,以下是Maven的依赖配置:
代码语言:xml<dependencies>
复制
 <dependency>
   <groupId>com.google.inject</groupId>
   <artifactId>guice</artifactId>
   <version>3.0</version>
  </dependency>
 <dependency>
   <groupId>javax.xml.ws</groupId>
   <artifactId>jaxws-api</artifactId>
   <version>2.2.1</version>
  </dependency>
 <dependency>
   <groupId>com.sun.xml.ws</groupId>
   <artifactId>jaxws-rt</artifactId>
   <version>2.2.10</version>
  </dependency>
</dependencies>
  1. 创建Guice模块并绑定JAX-WS服务接口和实现类:
代码语言:java
复制
import com.google.inject.AbstractModule;
import com.google.inject.name.Names;

public class MyGuiceModule extends AbstractModule {
  @Override
  protected void configure() {
    bind(MyService.class).annotatedWith(Names.named("MyServiceImpl")).to(MyServiceImpl.class);
  }
}
  1. 创建JAX-WS服务接口和实现类:
代码语言:java
复制
import javax.jws.WebService;

@WebService
public interface MyService {
  String sayHello(String name);
}

public class MyServiceImpl implements MyService {
  public String sayHello(String name) {
    return "Hello, " + name;
  }
}
  1. 创建JAX-WS服务端点并使用Guice注入服务实现类:
代码语言:java
复制
import javax.jws.WebService;
import javax.xml.ws.Endpoint;
import com.google.inject.Guice;
import com.google.inject.Injector;

@WebService(endpointInterface = "com.example.MyService")
public class MyServiceEndpoint implements MyService {
  private MyService myService;

  public MyServiceEndpoint() {
    Injector injector = Guice.createInjector(new MyGuiceModule());
    myService = injector.getInstance(MyService.class);
  }

  @Override
  public String sayHello(String name) {
    return myService.sayHello(name);
  }

  public static void main(String[] args) {
    Endpoint.publish("http://localhost:8080/MyService", new MyServiceEndpoint());
  }
}
  1. 创建JAX-WS客户端代理并调用服务:
代码语言:java
复制
import javax.xml.ws.Service;

public class MyServiceClient {
  public static void main(String[] args) throws Exception {
    Service service = Service.create(
      new URL("http://localhost:8080/MyService?wsdl"),
      new QName("http://example.com/", "MyServiceEndpointService")
    );
    MyService myService = service.getPort(MyService.class);
    String response = myService.sayHello("World");
    System.out.println(response);
  }
}

以上就是在Web容器外的Java 6中使用Guice 3和JAX-WS的方法。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

webservice有哪些框架_web前端主流框架有哪些

能够很方便与EJB、Seam、Guice、SpringSpring MVC集成使用。支持客户端与服务器端自动实现GZIP解压缩。...(资料少无法比较) 2.7 java6JAX-WS JAX-WS2.0 (JSR 224)是Sun新web services协议栈 JAVA中有三种WebService规范,分别是JAX-WS(JAX-RPC...早期JAVA Web服务规范JAX-RPC(Java API ForXML-Remote Procedure Call)目前已经被JAX-WS 规范取代,JAX-WS 是JAX-RPC 演进版本,但...stub 表格2端对端性能上,一个客户端驱动程序使用了一个胖客户端Web服务堆栈来发送接受SOAP请求 Webservice服务端 Webservice客户端 Webservice stack...多年开发中已有了很多积累,不能因为使用开发框架就不能再使用了,那未免有些得不偿失。(暂时无法提供观点) 10.

2.3K20

使用JAX-WS构建Web Services

大家好,又见面了,我是你们朋友全栈君。 使用JAX-WS构建Web Services JAX-WS简写为 Java Api For Xml Web Service。...JAX-WS使用XML构建Web Service与Client进行交流通信技术。 JAX-WS中,Web Service操作调用表现为以XML为基础协议如SOAP协议。...尽管 SOAP协议是很复杂,但是JAX-WS隐藏了开发人员面对复杂性。服务器端,开发者可以通过使用java语言接口中定义方法来制定Web Service。...JAX-WS运行系统会自动完成调用回应之间SAOP消息转换。 使用 JAX-WS,客户端和服务器端都有一个很大优势:java编程语言平台独立性。...PostConstruct方法由容器实现类开始向 Web Service Client做出反应之前调用。 PreDestroy方法由容器终端移出操作之前调用。

60920
  • 老司机带你玩转web service

    WSDL: 做为描述 WebService 语言,你能很清晰知道提供服务是什么、入参、返回数据,机器人都很容器进行阅读。...丰满意味着臃肿庞大,不可避免导致了Axis2复杂性,听使用过她的人,它所依赖包数量大小都是很惊人,打包部署发布很麻烦。...JAX-WS 服务端无 MVC 框架开发实践 我这里无 MVC 框架指的是没有使用任何像 Struts/Spring MVC/WebWork....这些东西,Java EE 项目最纯真的 Servlet... main 函数中静态方式防部方式这里就不提了,咱需要 webServer 服务 web 项目一起启动起来,同呼吸共命运。...通过上面的4步操作,启动 web 项目吧,不出什么意外的话,启动 web 容器打印日志是这样。 ? 3.

    1.2K90

    Maven底层容器Plexus Container前世今生,一代芳华终落幕

    也是03年,使用Apache 2.0 License,发布了一个版本;04年3月,发布了一个生产用版本。...Container,IOC容器,Maven 1.x/2.x在用,3.0版本后,Maven自身也没有再使用了 Plexus Components Maven工作就是各种文件、目录打交道,这期间,会沉淀出来很多公用组件...此时,经过多年迭代,2010年前后,guice已经比较成熟了,google内部也而得到了广泛应用,且依赖注入这个领域,也持续不断地发展中,比如java官方定义了相关标准api。...而此时,Maven开发者们已经难以同时维护Plexus IOC容器(比如适配java官方新出标准,周边Spring兼容等等各类工作),因此,Maven决定,为了节省精力,Maven将不再基于Plexus...IOC容器,而是使用Guice,以后就只管用了,而guice维护升级,自然有Guice开源团队去跟进。

    43710

    3分钟带你了解轻量级依赖注入框架Google Guice【享学Java

    前言 说起依赖注入(DI),相信你首先想到必然是Spring,Spring是Java技术全家桶,是Java EE开发一站式解决方案实际开发标准。...GuiceJava领域并不流行(相较于Spring),但因为它轻量级,所以可以作为你去学习理解DI一个抓手,适合你去进行独立分析理解依赖注入思想,毕竟程序员经常说:思想都是相通。...这便是一个最简单使用Guice来实现依赖注入示例,SpringApplicationContext还蛮像有木有。...另外,web使用/整合Guice,一般需要导入下面Jar包给与支持: com.google.inject.extensions...;Guice使用Java代码来描述绑定关系 Spring使用字符串来表示Beankey;Guice一般使用类型绑定关系来描述一个实例,且是分模块、局部 Spring容器初始化时候完成所有关系绑定

    5.2K21

    jax-ws使用教程_JAX-WS教程

    欢迎使用JAX-WS教程。 Web服务客户端-服务器模型上工作,它们通过网络进行通信。 服务器端组件提供服务所在端点URL,客户端应用程序可以调用不同方法。...JAX-WS教程中,我们将使用JAX-WS创建基于SOAPWeb服务。 但是首先,我们将介绍SOAP Web服务中使用一些专业术语。...SOAP是用于设计开发Web服务基于XML行业标准协议。 由于它基于XML,因此与平台语言无关。 因此,我们服务器可以基于JAVA,客户端可以基于.NET,PHP等,反之亦然。...JAX-WS代表XML Web ServicesJava API。 JAX-WS是基于XMLJava API,用于构建Web服务服务器客户端应用程序。...现在,我们将不得不创建一个接口,该接口中声明将在我们JAX-WS示例Web服务中公开方法。

    1.6K20

    WebService_03_服务端实现方式一JWS

    JWS JAX-WSJava6引进) 是SOAP协议一个Java实现规范,这个新规范是为了简化基于SOAPJava开发。...JAX-WS规范其实就是一组XMLweb servicesJAVA API,JAX-WS允许开发者可以选择RPC-oriented或者message-oriented来实现自己web services...通过使用 Java™ API for XMLWeb Services (JAX-WS) 技术设计开发 Web 服务,可以带来很多好处,能简化 Web 服务开发部署,并能加速 Web 服务开发。... JAX-WS中,一个远程调用可以转换为一个基于XML协议,比如SOAP。使用JAX-WS过程中,开发者不需要编写任何生成处理SOAP消息代码。...(3客户端,用户可以通过JAX-WSAPI创建一个代理(用本地对象来替代远程服务)来实现对于远程服务器端调用。

    98640

    第一章 JAX-WS认识

    以下是关于JAX-WS认识,以下摘自百度百科: ----   JAX-WS规范是一组XML web servicesJAVA API,JAX-WS允许开发者可以选择RPC-oriented或者message-oriented... JAX-WS中,一个远程调用可以转换为一个基于XML协议例如SOAP,使用JAX-WS过程中,开发者不需要编写任何生成处理SOAP消息代码。...通过web service所提供互操作环境,我们可以用JAX-WS轻松实现JAVA平台与其他编程环境(.net等)互操作。   ...这个实现是基于JavaRPC,并不完全支持schema规范,同时没有对BindingParsing定义标准实现。   ...binding层,使用是the Java Architecture for XML Binding (JAXB, JSR 222),parsing层,使用是the Streaming API for

    29320

    Java 跨项目调用技术 WebService

    Web Service(WEB服务)能够快捷方便地综合结合各种系统、商务任何应用平台 利用最新Web Service 标准能够使任何软件系统系统之间应用互通互联,方便,而且更加廉价 java...WebService规范 JAVA 中共有三种WebService 规范,分别是JAX-WS、JAX-RS、JAXM&SAAJ(已废弃) JAX-WS规范 JAX-WS 全称为Java API for...XML-Based Webservices ,早期基于SOAP JAVA Web 服务规范JAX-RPC(Java API For XML-Remote Procedure Call)目前已经被...Soap协议是基于http应用层协议,soap协议传输是xml数据 ​ 采用wsdl作为描述语言即webservice使用说明书,wsdl属w3c标准。 ​...XSD,W3C为webservice制定了一套传输数据类型,使用xml进行描述,即XSD(XML Schema Datatypes),任何编程语言写webservice接口发送数据时都要转换成webservice

    56040

    四大Java EE容器(Tomcat、JBoss、Resin、Glassfish)之简单比较(转)

    Tomcat是Apache鼎力支持Java Web应用服务器,由于它优秀稳定性以及丰富文档资料,广泛使用人群。...Tomcat是Apache鼎力支持Java Web应用服务器(注:servlet容器),由于它优秀稳定性以及丰富文档资料,广泛使用人群,从而在开源领域受到最广泛青睐。 2....Jboss作为Java EE应用服务器,它不但是Servlet容器,而且是EJB容器,从而受到企业级开发人员欢迎,从而弥补了Tomcat只是一个Servlet容器缺憾。 3....Resin也仅仅是一个Servlet容器,然而由于它优秀运行速度,使得它在轻量级Java Web领域备受喜爱,特别是互联网Web服务领域,众多知名公司都采用其作为他们Java Web应用服务器,譬如...商用应用服务器里主要有:Weblogic、Websphere,其中Weblogic我也使用过很长一段时间,当时也只用其当Servlet容器,然而就在同等条件下,性能及易用性等方面,要比Tomcat优秀很多

    1.8K90

    【方向盘】Java EE几十种技术,“活着”还剩几何(服务安全Java SE篇)

    是一个Java编程语言应用程序接口,支持按照表述性状态转移(REST)架构风格创建Web服务。借助标准注解来落地。 JAX-WS区别: 两者是 不同风格SOA架构。...这么技术老外那边还有用武之地(比如Eureka就用它),国内使用得确实少之又少了。 ✌2....注:JAX-WS技术,有需要可提前移步阅读 我们可以对比下JAX-RPCJAX-RS: 相同点 JAX-WS仍然支持 SOAP 1.1 over HTTP 1.1,因此互操作性将不会受到影响...JAXR使java软件程序员使用单个易于使用抽象API访问多种XML registries,一个统一JAXR实现模型描述XML registries中内容元数据。...JAX-WS 推荐学习指数 ⭐️ Java API for XML Web Services:一组XML web servicesJAVA API,JAX-WS允许开发者可以选择RPC-oriented

    63340

    【webservice】Java JAX-WSJAX-RS webservice「建议收藏」

    JAX-WS规范是一组xml web servicejava API。 规范是一组API? 规范只是集成java平台里边API,这个API是用来实现不同风格JWS。...jaxb:java xml binding,是 JAX-WSJAX-RS底层使用对象与XML之间转换工具。...JAX-RS具有创建API优势,这些API可以更简单不同浏览器移动设备上创建和消化消息,即JSON结构。它没有引入信封概念,并使用HTTP。它不引入加密或安全性,它使用HTTPS。...JAX-WS虽然HTTPS上运行,但是使用WS-SecurityPolicy等为安全性提供了额外补充。...SOAP提升: 1.目前WebService协议主要有SOAP1.11.2。 2.两者命名空间不同。 3.SOAP1.1版本与SOAP1.2版本头信息上存在差异。

    3.2K20

    webservice技术介绍

    使用厂商WSDL2Java之类工具生成静态调用代理类代码;使用厂商提供客户端编程API类;使用SUN公司早期标准jax-rpc开发包;使用SUN公司最新标准jax-ws开发包。...JAX-WS 2.0 是面向 Java 5 开发 Web services 最新编程标准,它提供了新编程模型对以往 JAX-RPC 方式 Web services 进行了增强。...binding层,使用是the Java Architecture for XMLBinding (JAXB, JSR 222),parsing层,使用是the Streaming API for...4、XFire XFire是新一代Java Web服务引擎,XFire使得JavaEE应用中发布Web服务变得轻而易举。...其他Web服务引擎相比,XFire配置非常简单,可以非常容易地Spring集成,它使得Java开发人员终于可以获得.Net开发人员一样开发效率。

    1.7K20

    三十四、借助GuiceDI依赖管理,轻松实现一键启动Eureka Client端完成服务注册

    总结 关注A哥 前言 回想一下,本系列第一篇文章就有提到过,Eureka它是使用轻量级DI框架:谷歌Guice来管理其依赖。...参考文章:3分钟带你了解:轻量级依赖注入框架Google Guice【享学Java】 ---- 正文 前面文章我书写代码示例时候,全靠我勤劳双手,各种new对象,各种组件构建和组装真的是蛮麻烦。...,需要替换~ CloudInstanceConfig元数据强相关,关于eureka元数据,后面我会用专门文章介绍如何去使用它,有较多使用技巧以及黑黑科技 ---- 使用Guice启动Eureka...---- 使用自定义EurekaInstanceConfig实现类 EurekaGuice容器默认放入是CloudInstanceConfig,该实例是AWS绑定,一般用于较为复杂云环境。...但实际上是,Spring Cloud中使用Eureka时,它完全没有使用Guice,而是把所有Eureka组件均交由Spring容器管理,完全自己组织。

    90920
    领券