Web service on TS Host not responding

Discuss problems installing or using TrackStudio.

Web service on TS Host not responding

Postby sellingerd » Wed Feb 03, 2010 11:24 am

The public Trackstudio web services for Trackstudio Host at, for example at

[url]
http://host.trackstudio.com/TrackStudio/services/User
[/url]

are returning 404 (not found).

Is this a temporary thing or is there some other problems?

thanks in advance.
sellingerd
 
Posts: 76
Joined: Fri Dec 05, 2003 3:35 pm
Location: Paris, France

Re: Web service on TS Host not responding

Postby admin » Wed Feb 03, 2010 2:02 pm

We have changed in latest TrackStudio 4 betas SOAP framework from AXIS 1.x to JAX WS. This should simplify SOAP client (and server) development and improve SOAP API perfomance. Web services are accessible using new path, for example

http://host.trackstudio.com:8800/TrackS ... /User?wsdl
Last edited by admin on Wed Feb 03, 2010 4:41 pm, edited 1 time in total.
Maxim Kramarenko (mailto: maximkr@trackstudio.com)
TrackStudio - Hierarchical Bug & Issue Tracking Software
http://www.trackstudio.com
admin
Site Admin
 
Posts: 7305
Joined: Thu Jan 01, 1970 3:00 am
Location: Smolensk, Russia

Postby sellingerd » Wed Feb 03, 2010 4:15 pm

The URL provided is not responding. Will this be working soon?
sellingerd
 
Posts: 76
Joined: Fri Dec 05, 2003 3:35 pm
Location: Paris, France

Postby admin » Wed Feb 03, 2010 4:21 pm

sellingerd wrote:The URL provided is not responding. Will this be working soon?


Have you tried to open it from browser ? Working fine for me.
Maxim Kramarenko (mailto: maximkr@trackstudio.com)
TrackStudio - Hierarchical Bug & Issue Tracking Software
http://www.trackstudio.com
admin
Site Admin
 
Posts: 7305
Joined: Thu Jan 01, 1970 3:00 am
Location: Smolensk, Russia

Postby sellingerd » Wed Feb 03, 2010 4:37 pm

Okay. It is working. It must be our firewall blocking the request.

cheers.
sellingerd
 
Posts: 76
Joined: Fri Dec 05, 2003 3:35 pm
Location: Paris, France

Postby sellingerd » Mon Feb 15, 2010 10:43 am

The web service at this address is in no way the same as the previous web service. The names of many (maybe all) the ''object" bean classes - like TaskBean have been changed to a camel-case version - taskBean. This is not standard casing for class names.

In addition some members seem to have changed in incomprehensible ways. For example, previously the TaskSever.getChildren member returned an array of TaskBeans now it returns an array of userBeans.

I am using the WS from dot net with the command:

wsdl.exe http://host.trackstudio.com:8800/TrackS ... /Task?wsdl /out:TaskService.cs /namespace:Com.TrackStudio.Task


Has this web service been fully tested and is it in its final form? It breaks all my code (and I am not really ready to rewrite everything).

:cry:
sellingerd
 
Posts: 76
Joined: Fri Dec 05, 2003 3:35 pm
Location: Paris, France

Postby admin » Mon Feb 15, 2010 11:02 am

sellingerd wrote:The web service at this address is in no way the same as the previous web service.


Yes, this is different - old version uses Axis 1.0, which quite old for now, developement of Axis 1.x is stopped. We (and our customers) also have a lot of problems with it, generally regarded to bad perfomance and incorrect character encoding for non-latin chars.

We have tried to update to Axis 2.0, but it's incompatible with Axis 1.0, no easy way to replace.

Finally, we have decided to use JAX WS - standard Java way for SOAP API (introduced in Java SE 1.6), which is much faster (up to 3x) and easy to use (both client and server code).

We know, that API looks somewhat different now, for example it uses argument names like arg0, arg1, which can cause compatibility problems too. This change was not easy for us, because we know, that many customers uses SOAP API. But using Axis 1.x for next few years is a bad solution too, especially when we have standard way.
Maxim Kramarenko (mailto: maximkr@trackstudio.com)
TrackStudio - Hierarchical Bug & Issue Tracking Software
http://www.trackstudio.com
admin
Site Admin
 
Posts: 7305
Joined: Thu Jan 01, 1970 3:00 am
Location: Smolensk, Russia

Postby sellingerd » Mon Feb 15, 2010 11:05 am

Can you at least provide a comprehensive document describing the changes and the new API so we can decide what to do?
sellingerd
 
Posts: 76
Joined: Fri Dec 05, 2003 3:35 pm
Location: Paris, France

Postby admin » Mon Feb 15, 2010 11:12 am

sellingerd wrote:Can you at least provide a comprehensive document describing the changes and the new API so we can decide what to do?


Actually, no major changes in API expected, we just replaced SOAP engine but doesn't control generated WSDL. No changes in API expected.

BTW, I've checked TaskService.getChildren - it should return array of TaskBeans:

Code: Select all
    public TaskBean[] getChildren(String sessionId, String taskId) throws Exception {
        List<TaskBean> list = new ArrayList<TaskBean>();
        for (Object o : manager.getChildren(SessionManager.getInstance().getSessionContext(sessionId), Null.beNull(taskId))) {
            SecuredTaskBean stb = (SecuredTaskBean) o;
            list.add(stb.getSOAP());
        }
        return list.toArray(new TaskBean[]{new TaskBean()});
    }


Probably, you use UserService there ? It has the same method, but return array of UserBean.
Maxim Kramarenko (mailto: maximkr@trackstudio.com)
TrackStudio - Hierarchical Bug & Issue Tracking Software
http://www.trackstudio.com
admin
Site Admin
 
Posts: 7305
Joined: Thu Jan 01, 1970 3:00 am
Location: Smolensk, Russia

Postby sellingerd » Mon Feb 15, 2010 11:37 am

I don't under stand. When I generate my proxies (using the command that I posted previously, by proxy method for getChildren (in the TaskService is clearly):

Code: Select all
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("",
        RequestNamespace="http://service.soap.trackstudio.com/",
        ResponseNamespace="http://service.soap.trackstudio.com/",
        Use=System.Web.Services.Description.SoapBindingUse.Literal,
        ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
[return: System.Xml.Serialization.XmlElementAttribute("return",
        Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
public userBean[] getChildren([System.Xml.Serialization.XmlElementAttribute(
        Form=System.Xml.Schema.XmlSchemaForm.Unqualified)] string arg0,
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)] string arg1) {
    object[] results = this.Invoke("getChildren", new object[] {
       arg0,
        arg1});
    return ((userBean[])(results[0]));
}


I there a problem with the description of the service? If not, how should I be generating my .NET proxies so thay they match the code you posted?
sellingerd
 
Posts: 76
Joined: Fri Dec 05, 2003 3:35 pm
Location: Paris, France

Next

Return to TrackStudio Support

Who is online

Users browsing this forum: No registered users and 1 guest