首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >制作webservice

制作webservice
EN

Stack Overflow用户
提问于 2014-11-13 08:19:34
回答 1查看 313关注 0票数 0

我编写了以下Java代码来编写web服务,该服务将从数据库表返回一些行:

代码语言:javascript
运行
复制
package ncw;

import java.sql.Connection;
import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.util.ArrayList;

import javax.jws.Oneway;
import javax.jws.WebMethod;
import javax.jws.WebService;

@WebService
public class PLSQLWS {
    @WebMethod
    @Oneway
    public ArrayList getSalesPlanningTestData() {
        String query = "select * from sales_planning_test_data";
        ArrayList data = new ArrayList();
        try {
            Connection conn = connect();
            if (conn != null) {
                PreparedStatement stmt =  conn.prepareStatement(query);
                ResultSet rs = stmt.executeQuery();
                while (rs.next()) {
                    SALES_PLANNING_WS_DATA row = new SALES_PLANNING_WS_DATA();
                    row.setId(rs.getInt(1));
                    row.setPoNumber(rs.getString(2));
                    row.setSomethingElse(rs.getString(3));
                    row.setFlag(rs.getString(4));
                    data.add(row);
                }
            }
        } catch (Exception ex) {
            ex.printStackTrace();
        }

        return data;
    }

    public ArrayList<String> getNames(){
        ArrayList<String> list = new ArrayList<String>();
        list.add("usman");
        list.add("Mohsin");
        return list;
    }

    private Connection connect() throws Exception {
        Class.forName("oracle.jdbc.driver.OracleDriver");
        Connection connection =
            DriverManager.getConnection("jdbc:oracle:thin:@192.xxx.x.xxx:1531:mysid", "username","password");
        return connection;
    }
}

SALES_PLANNING_WS_DATA.java

代码语言:javascript
运行
复制
package ncw;



public class SALES_PLANNING_WS_DATA {
    private int id;
    private String poNumber;
    private String somethingElse;
    private String flag;

    public SALES_PLANNING_WS_DATA() {

    }

    public void setId(int id) {
        this.id = id;
    }

    public int getId() {
        return id;
    }

    public void setPoNumber(String poNumber) {
        this.poNumber = poNumber;
    }

    public String getPoNumber() {
        return poNumber;
    }


    public void setSomethingElse(String somethingElse) {
        this.somethingElse = somethingElse;
    }

    public String getSomethingElse() {
        return somethingElse;
    }

    public void setFlag(String flag) {
        this.flag = flag;
    }


    public String getFlag() {
        return flag;
    }
    public String toString(){
        return getPoNumber();
    }
}

我使用JDeveloper创建webservice服务。当我在HTTP中测试并调用getSalesPlanningTestData()方法时,我没有得到任何结果。输出部分说“所选消息不是soap消息”。当我调用getNames()方法时,它会返回数据。

有人知道这是怎么回事吗?

EN

回答 1

Stack Overflow用户

发布于 2014-11-13 08:27:32

删除@Oneway注释。它定义了没有返回任何数据的not方法。

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

https://stackoverflow.com/questions/26904203

复制
相关文章

相似问题

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