首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GlassFish服务器部署

GlassFish服务器部署
EN

Stack Overflow用户
提问于 2017-11-10 12:17:01
回答 1查看 189关注 0票数 5

我是新使用GlassFish服务器和WS的。我刚刚部署了一个网络应用程序。使用具有此web.xml的maven生成

代码语言:javascript
复制
<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
  <display-name>Archetype Created Web Application</display-name>


</web-app>

我单击网络应用程序链接

我在申请中有这门课:

代码语言:javascript
复制
import javax.jws.WebMethod;
import javax.jws.WebService;

import javax.servlet.http.HttpSession;

import javax.xml.ws.WebServiceContext;

import javax.xml.ws.handler.MessageContext;


    @WebService(serviceName="IberiaWS")
    public class IberiaWS {

      @Resource
      private WebServiceContext wsContext;  

      public IberiaWS () {
      }

      private UserVO getSessionUserVO() {
        MessageContext mc = wsContext.getMessageContext();
        HttpSession session = ((javax.servlet.http.HttpServletRequest)mc.get(MessageContext.SERVLET_REQUEST)).getSession();
        return (UserVO)session.getAttribute("uservo");
      }

      private void setSessionUserVO(UserVO uservo) {
        MessageContext mc = wsContext.getMessageContext();
        HttpSession session = ((javax.servlet.http.HttpServletRequest)mc.get(MessageContext.SERVLET_REQUEST)).getSession();
        session.setAttribute("uservo", uservo);

      }

      @WebMethod
      public boolean login(String loginName, String loginPwd) throws Exception {
        this.setSessionUserVO(new UserDAO().findUser("_"+loginName, "__"+loginPwd));
        return isConnected();
      }

      @WebMethod
      public boolean isConnected() {
        return (this.getSessionUserVO()!=null);
      }

      @WebMethod
      public IberiaPerson getPerson(String id) {
        return new IberiaPerson();   
      }

      @WebMethod
      public IberiaPerson findPerson(String companyNr) {
        UserVO uservo = this.getSessionUserVO();
        IberiaPerson ret=null;
        PersonVO p= new PersonDAO().findByCompanyNr(uservo.getAdminCenterId(), uservo.getUserId(), "Iberia", companyNr);
        if (p!=null) {
          ret = new IberiaPerson();
          ret.setPersonId(p.getPersonId());
          ret.setCompanyName(p.getVehicleOwnerName());
          ret.setCategoryName(p.getCategoryName());
          ret.setCompanyNr(p.getCompanyNr());
          ret.setFirstName(p.getFirstName());
          ret.setLastName(p.getLastName());
          ret.setStatusId(p.getStatusId());
          ret.setGroupName(p.getGroupList());
          ret.setKeyCode(p.getKeyString());   
          ret.setComments(p.getLmComment());
        }
        return ret;   
      }
    }

似乎WS是在我在引擎中看到它之后部署的。

我可以访问spp。http://localhost:8080/iberiafleet/

但我现在不知道如何访问已部署的WS的WSLD

我在这个URL上得到了一个HTTP状态404

http://localhost:8080/iberiafleet/IberiaWSPort?WSDL

而且还

http://localhost:8080/iberiafleet/IberiaWS?wsdl

但是根据本教程,我应该看到一个链接视图终结点

https://blog.idrsolutions.com/2013/08/creating-and-deploying-a-java-web-service/

但我没看到。

我可以在控制台中看到这条消息:

代码语言:javascript
复制
  [#|2017-11-13T10:50:39.993+0100|INFO|glassfish 5.0|javax.enterprise.webservices.metroglue|_ThreadID=19;_ThreadName=RunLevelControllerThread-1510566633374;_TimeMillis=1510566639993;_LevelValue=800;_MessageID=AS-WSMETROGLUE-10010;|
  Web service endpoint deployment events listener registered successfully.|#]
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-13 11:23:50

我认为您的WSDL中有一个错误,是吗?

代码语言:javascript
复制
http://localhost:8080/iberiafleet/IberiaWS?wsdl

工作?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47222604

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档