This has been driving me crazy today.
I had to write a custom callforward app, which upon setting the call forward, modifies some line properties as well (remove any pickup group that may be present).
To set the callforward, I've been using JTAPI and I've had this operation operational for over a year in a productive environment. Now I've added the updateLine axl command, and all of a sudden, the application no longer does what it's supposed to.
Here is what happens: via the phone interface, I enter the number I want to forward to, then send the request to my webserver. There, the forward is set via JTAPI without exceptions being thrown (since setting / removing a cfwd gets no feedback, getting an exception = it didn't work). Then, I send the updateLine for the lines I've just forwarded. It all works out nicely, the apps comes back telling the user all his calls have been forwarded to number X.
However, no callforwarding is actually made even though JTAPI came through telling me everything was okay. However, the pickup group does get removed from the line.
If you then try the same operation again, this time there's only the JTAPI part as the line no longer is in the pickup group, and now the operation works like as reliable as it has always done before.
Writing a sample app is going to be a bitch because this thing isn't quite so simple (and I'm re-using a lot of class libs of other projects so I can't just send the source code of everything to cisco) so I might not open a case on this but I thought I'd let you know.. and if Cisco employees visit this forum maybe they could spare some time trying to replicate.
Now I'm stick having to rewrite the whole callforwarding via axl which technically isn't a problem, but it's just going to take up time that wasn't forseen in this particular project :(