cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Learn all about PTC Community Badges. Engage with PTC and see how many you can earn! X

PLM Windchill Java Based Web Services

ragunathan.p
1-Visitor

PLM Windchill Java Based Web Services

HI friends, Anyone worked on PLM Webservices? Recently PTC had released WebServices Framework For M050. It would be great if everyone share their ideas/experiences on the web services in PLM.



This framework document has an example but that does not have a DataBase hit.


It would be interesting to know if DB hit can be done by using Java Based Web Services in Windchill.

8 REPLIES 8

Hello

I dont knowif the M050 framework can directly query (maybe modify) the database & this is not my area of expertise (who knows what is), but I have seen where some one used apache axis2 web services to run oracle stored procedures & maybe even run jdbc for query/modify the oracle db &/or both.

But I would really like to see how the M050 framework does in the db area &/or can be coaxed into doing so.

L Jett

Hi All,

I am using BasicPagaeble query spec for querying EPM documents in database
which are in figure of laks(for e.g.300000).
But is is giving me error mentioned below

(wt.pom.pomResource/0) wt.pom.PersistenceException: A persistence error
occurred
. System message follows:
Nested exception is: (wt.pom.pomResource/21)
wt.pom.PagingFetchTimeOutException:

Paging fetch cannot be completed for this paging session (a background
process m
ay still be processing the paging session).
at
wt.pom.PersistentObjectManager.query(PersistentObjectManager.java:164
4)
at
wt.pom.PersistentObjectManager.query(PersistentObjectManager.java:106
😎
at
wt.fc.StandardPersistenceManager._query(StandardPersistenceManager.ja
va:4426)
at
wt.fc.StandardPersistenceManager._find(StandardPersistenceManager.jav
a:4499)
at
wt.fc.StandardPersistenceManager.find(StandardPersistenceManager.java
:1550)

Same code if I execute on my local machine having 275 records, it works
fine. I am not getting How to resolve this error?



Thanks & Regards,
Manisha

If you write your own servlet front end that uses Hibernate or JDBC and a
SOAP messaging front end to that servlet, a soap client or client api should
take care of the rest. That is basic J2EE principles. There is also no
reason this could not use the supported Windchill API either. See the older
documentation in info engine on servlets.you do not need to write webjects
in order to do what you want.


Increase/adjust wt.query properties upwards in wt.properties.


Hi Ragu

Are you talking about the example code in
<windchill_root>\prog_examples\jws\ that i just discovered in 9.1 M060
thanks to your post?
From a very quick first look it seems like it contains the same SOAP stack
that I thought would only be available from 10.0 and onwards.

I think this is good news because this would allow us to move to the new
web service implementation sooner rather than later and hopefully get rid
of some of the workarounds we have currently applied in our .NET SOAP
client code with 9.1 M020

Also when you say "PLM Webservices" do you mean the

ya,

PFA for Web services Framework document.



Ragunathan P
Tata Consultancy Services
Mailto: ragunathan.p@tcs.com
Website:

Hi friends,Want ur inputs for the below scenario :


Created a webservices and was able to retrieve data from DB successfully. But this works only when I ran the services as jar in Shell (command to run services in shell is specified in Webservices Frameworkdocument). When I try to invoke Windchill webServices by using the wsdl file generated, there is an exception in Tomcat:


javax.xml.ws.WebServiceException: java.lang.RuntimeException: Unauthenticated requests are not allowed. at com.sun.xml.wss.jaxws.impl.SecurityServerTube.processException(SecurityServerTube.java:381) at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:593) at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:557) at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:542) at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:439) at com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:243) at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:471) at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:244) at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:135) at com.sun.xml.ws.transport.http.servlet.WSServletDelegate.doGet(WSServletDelegate.java:129) at com.sun.xml.ws.transport.http.servlet.WSServletDelegate.doPost(WSServletDelegate.java:160) at com.sun.xml.ws.transport.http.servlet.WSServlet.doPost(WSServlet.java:75) at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at wt.httpgw.filter.WTContextBeanFilter.doFilter(WTContextBeanFilter.java:48) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at wt.httpgw.filter.TrustedAuthFilter.doFilter(TrustedAuthFilter.java:123) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at wt.servlet.CompressionFilter.doFilter(CompressionFilter.java:224) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at wt.servlet.RequestInterrupter.doFilter(RequestInterrupter.java:324) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at wt.servlet.ServletRequestMonitor.doFilter(ServletRequestMonitor.java:1417) at wt.servlet.ServletRequestMonitorFilter.doFilter(ServletRequestMonitorFilter.java:54) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:769) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:698) at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:891) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690) at java.lang.Thread.run(Thread.java:619) Caused by: java.lang.RuntimeException: Unauthenticated requests are not allowed. at com.ptc.jws.security.SecurityContext.handleMessage(SecurityContext.java:54) at com.ptc.jws.security.SecurityContext.handleMessage(SecurityContext.java:33) at com.sun.xml.ws.handler.HandlerProcessor.callHandleMessage(HandlerProcessor.java:292) at com.sun.xml.ws.handler.HandlerProcessor.callHandlersRequest(HandlerProcessor.java:135) at com.sun.xml.ws.handler.ServerLogicalHandlerTube.callHandlersOnRequest(ServerLogicalHandlerTube.java:142) at com.sun.xml.ws.handler.HandlerTube.processRequest(HandlerTube.java:116) at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:598) ... 43 more

Hi Friends,


When a webservice call is made from another system/application, what are the different authentication scenarios available in PLM web services ? Please do share the options and learnings !!

Announcements


Top Tags