使用alfresco-web-service-client连接到alfresco 2017

时间:2017-09-05 17:34:04

标签: alfresco alfresco-maven

我正在使用alfresco-web-service-client 5.0.a,我正在尝试登录2017年的露天社区,该社区部署在:localhost:8081/alfresco

这是我到目前为止所做的:

    import org.alfresco.webservice.authentication.AuthenticationFault;
    import org.alfresco.webservice.util.AuthenticationUtils;
    import org.alfresco.webservice.util.WebServiceFactory;

    public class Main {

        public static void main(String[] args) throws AuthenticationFault  {

            WebServiceFactory.setEndpointAddress("http://localhost:8081/alfresco/api");     
            AuthenticationUtils.startSession("admin", "admin");

        }
    }

这是我在上课时所得到的:

Exception in thread "main" org.alfresco.webservice.util.WebServiceException: Error starting session.
    at org.alfresco.webservice.util.AuthenticationUtils.startSession(AuthenticationUtils.java:99)
    at com.lydec.Main.Main.main(Main.java:12)
Caused by: java.net.ConnectException: Connection refused: connect
    at org.apache.axis.AxisFault.makeFault(AxisFault.java:101)
    at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:154)
    at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
    at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
    at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
    at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
    at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
    at org.apache.axis.client.Call.invoke(Call.java:2767)
    at org.apache.axis.client.Call.invoke(Call.java:2443)
    at org.apache.axis.client.Call.invoke(Call.java:2366)
    at org.apache.axis.client.Call.invoke(Call.java:1812)
    at org.alfresco.webservice.authentication.AuthenticationServiceSoapBindingStub.startSession(AuthenticationServiceSoapBindingStub.java:187)
    at org.alfresco.webservice.util.AuthenticationUtils.startSession(AuthenticationUtils.java:84)
    ... 1 more
Caused by: java.net.ConnectException: Connection refused: connect
    at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
    at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
    at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
    at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
    at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
    at java.net.PlainSocketImpl.connect(Unknown Source)
    at java.net.SocksSocketImpl.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.axis.components.net.DefaultSocketFactory.create(DefaultSocketFactory.java:153)
    at org.apache.axis.components.net.DefaultSocketFactory.create(DefaultSocketFactory.java:120)
    at org.apache.axis.transport.http.HTTPSender.getSocket(HTTPSender.java:191)
    at org.apache.axis.transport.http.HTTPSender.writeToSocket(HTTPSender.java:404)
    at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:138)
    ... 12 more

的pom.xml

1 个答案:

答案 0 :(得分:0)

您无法使用旧的(且不稳定的)5.0.a Web服务客户端与服务器上的现代版Alfresco进行通信。

link提供有关与基于SOAP的Web服务相关的更改的信息。

如果必须使用基于SOAP的Web服务,请使用CMIS(sample code)。

我强烈建议您使用REST代替基于SOAP的Web服务。对于Alfresco,您可以使用新的public REST API,也可以使用CMIS(Atom Pub绑定或浏览器绑定)。