$25 Reward - Calling a CFC via Remote Object or Web Service without making the result public

I am just getting into Flex 2, so please forgive me for my
newbe vocab.
Here is how my applications have worked in the past, i.e.
ColdFusion:
<cfscript>
//Create an instance of component
order = CreateObject( 'component', 'PEK.Catalog.Order' );
//Call methd
theOrder = order.getOrder(1234);
</cfscript>
Display the order via HTML and CFML.
getOrder() returns a query and 1234 is a sample orderID. The
most important part of the solution I am looking for is that the it
must not expose my getOrder() as a public web service. I am able to
run the application with WS by making the mothod URL visible and
remote, but this is no way near the security I would like to have.
Here is my folder structure where components folder has been maped
to CF.
Application
|__extentions
| ... |__components
| ... ... |__PEK
|__wwwroot
I guest there should be a way to call CFC with the thing
remote object that I have no idea how to set up. So please what
would be a solution to my security issues.
Thank you in advance!

Click
Here for Link to Article
I guess this article answers part of the question. It is very
important to note that if the CFC is sitting on the same server as
the CFC the component methods could be public and not remote, thus
making it alot more secure.

Similar Messages

  • RMI and Threads: Calling wait() on a remote object

    I created a counter as a remote object.
    Multiple clients are displaying the counter value.
    If one of the clients increments the counter, I want the displayed counter value on every client to be updated to the new value (of the counter on the server).
    Therefore every client starts a new thread to "listen" for changes of the countervalue. I wanted to call the wait() method on the remote object (the remote counter). But i think it will be called on the stub instead of on the actual remote object.
    Therefore i created a extra method waitForChange() on the remote object.
    public void waitForChange() throws RemoteException, InterruptedException {
         synchronized(this) {
              wait();
    This method only calls the wait() method. Now I'm sure it's called on the remote object and not on the stub.
    This works, but my question is: is there a better way to do this?
    Code:
    ==========================================
    The remote interface
    ==========================================
    import java.rmi.Remote;
    import java.rmi.RemoteException;
    public interface RemoteCounter extends Remote {
         void incrementCounter() throws RemoteException;
         int getCounterValue() throws RemoteException;
         void waitForChange() throws RemoteException, InterruptedException;
    } ==========================================
    The implementation of the remote interface
    ==========================================
    import java.rmi.*;
    import java.rmi.activation.*;
    import RemoteCounter;
    public class RemoteCounterImpl extends Activatable
         implements RemoteCounter {
         private static final long serialVersionUID = 1L;
         private int counter = 0;
         protected RemoteCounterImpl(ActivationID id, MarshalledObject data) throws RemoteException {
              super(id, 0);
         public void incrementCounter() throws RemoteException {
              synchronized(this) {
                   counter++;
                   notifyAll(); //Inform all clients of the new countervalue;
         public void waitForChange() throws RemoteException, InterruptedException {
              synchronized(this) {
                   wait();
         public int getCounterValue() throws RemoteException {
              return counter;
    }==========================================
    A piece of code registering the remote object
    ==========================================
    ActivationDesc desc = new ActivationDesc(agi, "RemoteCounterImpl", codebase, data);
    //Register with rmid
    RemoteCounter counter = (RemoteCounter)Activatable.register(desc);
    // Bind the stub to a name in the registry running on 1099
    Naming.bind("Counter", counter);==========================================
    The panel containing a button, a label
    which starts a new thread listening for
    counter value changes
    ==========================================
    import javax.swing.*;
    import java.awt.Dimension;
    import java.awt.event.*;
    import java.rmi.*;
    import org.personal.exam.services.RemoteCounter;
    public class PanelCounter extends JPanel {
         private static final long serialVersionUID = 1L;
         JLabel labelX = new JLabel("Press testbutton");
         Thread t;
         RemoteCounter remoteCounter;
         public PanelCounter()     {
              try {
                   jbInit();
              } catch(Exception e) {
                   e.printStackTrace();
         private void jbInit() throws Exception
              this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
              this.setPreferredSize(new Dimension(450,300));
              // The securityManager is required to make is possible
              // to download classes from the server
              if (System.getSecurityManager() == null) {
                   System.setSecurityManager(new RMISecurityManager());
              //Create a testButton to increment the counter          
              JButton testButton = new JButton("Increment");
              testButton.addActionListener(new ActionListener(){
                   public void actionPerformed(ActionEvent arg0) {
                        incrementCounter();
              this.add(testButton);
              //Add a label to display the counter value
              this.add(labelX);
              // Create thread to listen for counter value changes
              try {
                   remoteCounter = (RemoteCounter)Naming.lookup("Counter");
                   CounterValueChecker cvl = new CounterValueChecker(labelX, remoteCounter);
                   //Start a thread to listen for changes of the countervalue
                 t = new Thread(cvl);
                 t.start();
              } catch(Exception e) {
                   e.printStackTrace();
              this.setVisible(true);
         private void incrementCounter() {
              String message = "error";
              try {
                   remoteCounter.incrementCounter();
                   message = "Current value is " + remoteCounter.getCounterValue();
              } catch(Exception e) {
                   System.out.println("Test Exception: " + e.getMessage());
                   e.printStackTrace();
              labelX.setText(message);
    }==========================================
    The runnable implementation used by the
    thread to wait for counterchanges
    ==========================================
    import java.rmi.RemoteException;
    import javax.swing.JLabel;
    import org.apache.log4j.Logger;
    import RemoteCounter;
    public class CounterValueChecker implements Runnable {
         private JLabel counterLabel;
         private RemoteCounter remoteCounter;
         public boolean keepChecking= true;
         private Logger logger = Logger.getLogger(this.getClass());
         public CounterValueChecker(JLabel counterLabel, RemoteCounter remoteCounter){
              this.counterLabel = counterLabel;
              this.remoteCounter = remoteCounter;
         public void run() {
              while(keepChecking) {
                   int newVal = -1;
                   synchronized(remoteCounter) {
                        try {
                             //remoteCounter.wait();
    //this does not work. I think because the wait() method is called on the
    //stub instead of on the actual remote object
                             remoteCounter.waitForChange();
                        } catch (InterruptedException e) {
                             keepChecking = false;
                             break;
                        } catch (RemoteException re) {
                             re.printStackTrace();
                        try {
                             newVal = remoteCounter.getCounterValue();
                        } catch (RemoteException re) {
                             re.printStackTrace();
                        counterLabel.setText("New value: " + newVal);
    }This is just a little test. Actually I want to notify clients of changes in data displayed in a Table. If one client saves one record of the data, i want the new record to be displayed immediatly on all clients that are viewing the same data.

    I've been doing some reading about RMI and callback.
    As I understand it, there's a remote object is running on the client now as wel. And the server makes a call to the client.
    But now the server makes a call to one client.
    And the point is, I want all clients to be updated with the new value.
    Does this mean, I have to keep a list with references to all clients connected to the server?
    I my code the notifyAll() method causes all waiting Threads (running on several clients) to wake up and do something (getting the new counter value).

  • Serialization error while returning Value Object from Web Service

    Hi
    I have developed a sample Web Service (RPC based), it returns Customer Value Object
    when client calls getCustomer method.
    I have written a Client (attached the client source code) to invoke the web service
    when the client invokes the Web Service it throws an Exception , the Exception
    Exception in thread "main" serialization error: no serializer is registered for
    (null, {java:customer}Customer)
    at com.sun.xml.rpc.encoding.DynamicInternalTypeMappingRegistry.getSerializer(DynamicInternalTypeMappingRegistry.java:62)
    at com.sun.xml.rpc.encoding.soap.SOAPResponseSerializer.initialize(SOAPResponseSerializer.java:72)
    at com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.initialize(ReferenceableSerializerImpl.java:47)
    at com.sun.xml.rpc.client.dii.BasicCall.createRpcResponseSerializer(BasicCall.java:382)
    at com.sun.xml.rpc.client.dii.BasicCall.getResponseDeserializer(BasicCall.java:364)
    at com.sun.xml.rpc.client.dii.BasicCall.invoke(BasicCall.java:259)
    at ClientwithWSDL.main(ClientwithWSDL.java:63)
    CAUSE:
    no serializer is registered for (null, {java:customer}Customer)
    at com.sun.xml.rpc.encoding.TypeMappingUtil.getSerializer(TypeMappingUtil.java:41)
    at com.sun.xml.rpc.encoding.InternalTypeMappingRegistryImpl.getSerializer(InternalTypeMappingRegistryImpl.java:287)
    at com.sun.xml.rpc.encoding.DynamicInternalTypeMappingRegistry.getSerializer(DynamicInternalTypeMappingRegistry.java:47)
    at com.sun.xml.rpc.encoding.soap.SOAPResponseSerializer.initialize(SOAPResponseSerializer.java:72)
    at com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.initialize(ReferenceableSerializerImpl.java:47)
    at com.sun.xml.rpc.client.dii.BasicCall.createRpcResponseSerializer(BasicCall.java:382)
    at com.sun.xml.rpc.client.dii.BasicCall.getResponseDeserializer(BasicCall.java:364)
    at com.sun.xml.rpc.client.dii.BasicCall.invoke(BasicCall.java:259)
    at ClientwithWSDL.main(ClientwithWSDL.java:63)
    If someone can help me to fix the issue, it will be great.
    Thanks
    Jeyakumar Raman.

    I guess, this is because the RI client is not finding the
    codec to ser/deser your Value Object. You need to register
    the codec in the type mapping registry before you invoke
    the web service method.
    Here is a sample:
    Service service = factory.createService( serviceName );
    TypeMappingRegistry registry = service.getTypeMappingRegistry();
    TypeMapping mapping = registry.getTypeMapping(
    SOAPConstants.URI_NS_SOAP_ENCODING );
    mapping.register( SOAPStruct.class,
    new QName( "http://soapinterop.org/xsd", "SOAPStruct" ),
    new SOAPStructCodec(),
    new SOAPStructCodec() );
    BTW, you can do the same exact thing on the client by using
    WLS impl of JAX-RPC. Is there a reason for using RI on the
    client side?
    regards,
    -manoj
    "Jeyakumar Raman" <[email protected]> wrote in message news:[email protected]...
    Hi Manoj,
    Thanks for your information, Yes, my client is Sun's JAX-RPC based, but the Server
    Implementation is done using Weblogic 7.0. When I invoke the Client without WSDL.
    It works fine without any problem. But when I invoke the webservice using WSDL,
    I am getting this problem.
    Here is my Client Code :
    * This class demonstrates a java client invoking a WebService.
    import java.net.URL;
    import javax.xml.rpc.ServiceFactory;
    import javax.xml.rpc.Service;
    import javax.xml.rpc.Call;
    import javax.xml.rpc.ParameterMode;
    import javax.xml.namespace.QName;
    import customer.Customer;
    public class ClientwithWSDL {
    private static String qnameService = "CustomerService";
    private static String qnamePort = "CustomerServicePort";
    private static String BODY_NAMESPACE_VALUE =
    "http://jeyakumar_3957:7001/Customer";
    private static String ENCODING_STYLE_PROPERTY =
    "javax.xml.rpc.encodingstyle.namespace.uri";
    private static String NS_XSD =
    "http://www.w3.org/2001/XMLSchema";
    private static String URI_ENCODING =
    "http://schemas.xmlsoap.org/soap/encoding/";
    private static String method="getCustomer";
    private static String endpoint="http://jeyakumar_3957:7001/webservice/CustomerService?WSDL";
    public static void main(String[] args) throws Exception {
    // create service factory
    ServiceFactory factory = ServiceFactory.newInstance();
    // define qnames
    QName serviceName =new QName(BODY_NAMESPACE_VALUE, qnameService);
    QName portName = new QName(BODY_NAMESPACE_VALUE, qnamePort);
    QName operationName = new QName("",method);
    URL wsdlLocation = new URL(endpoint);
    // create service
    Service service = factory.createService(wsdlLocation, serviceName);
    // create call
    Call call = service.createCall(portName, operationName);
    // invoke the remote web service
    Customer result = (Customer) call.invoke(new Object[0]);
    System.out.println("\n");
    System.out.println(result);
    "manoj cheenath" <[email protected]> wrote:
    >
    >
    >Hi Jayakumar,
    >
    >From the stack trace it looks like you are using sun's
    >RI of JAX-RPC. I am not sure what is going wrong with RI.
    >
    >WLS 7.0 got its own implementation of JAX-RPC. Check
    >out the link below for details:
    >
    >http://edocs.bea.com/wls/docs70/webserv/index.html
    >
    >
    >Let us know if you need more details.
    >
    >--=20
    >
    >regards,
    >-manoj
    >
    >
    >
    > "Jeyakumar" <[email protected]> wrote in message =
    >news:[email protected]...
    >
    > Hi
    >
    > I have developed a sample Web Service (RPC based), it returns Customer
    >=
    >Value Object
    > when client calls getCustomer method.
    >
    > I have written a Client (attached the client source code) to invoke
    >=
    >the web service
    > when the client invokes the Web Service it throws an Exception , the
    >=
    >Exception
    >
    >
    > Exception in thread "main" serialization error: no serializer is =
    >registered for
    > (null, {java:customer}Customer)
    > at =
    >com.sun.xml.rpc.encoding.DynamicInternalTypeMappingRegistry.getSerializer=
    >(DynamicInternalTypeMappingRegistry.java:62)
    >
    > at =
    >com.sun.xml.rpc.encoding.soap.SOAPResponseSerializer.initialize(SOAPRespo=
    >nseSerializer.java:72)
    > at =
    >com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.initialize(Reference=
    >ableSerializerImpl.java:47)
    > at =
    >com.sun.xml.rpc.client.dii.BasicCall.createRpcResponseSerializer(BasicCal=
    >l.java:382)
    > at =
    >com.sun.xml.rpc.client.dii.BasicCall.getResponseDeserializer(BasicCall.ja=
    >va:364)
    > at =
    >com.sun.xml.rpc.client.dii.BasicCall.invoke(BasicCall.java:259)
    > at ClientwithWSDL.main(ClientwithWSDL.java:63)
    >
    > CAUSE:
    >
    > no serializer is registered for (null, {java:customer}Customer)
    > at =
    >com.sun.xml.rpc.encoding.TypeMappingUtil.getSerializer(TypeMappingUtil.ja=
    >va:41)
    > at =
    >com.sun.xml.rpc.encoding.InternalTypeMappingRegistryImpl.getSerializer(In=
    >ternalTypeMappingRegistryImpl.java:287)
    > at =
    >com.sun.xml.rpc.encoding.DynamicInternalTypeMappingRegistry.getSerializer=
    >(DynamicInternalTypeMappingRegistry.java:47)
    >
    > at =
    >com.sun.xml.rpc.encoding.soap.SOAPResponseSerializer.initialize(SOAPRespo=
    >nseSerializer.java:72)
    > at =
    >com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.initialize(Reference=
    >ableSerializerImpl.java:47)
    > at =
    >com.sun.xml.rpc.client.dii.BasicCall.createRpcResponseSerializer(BasicCal=
    >l.java:382)
    > at =
    >com.sun.xml.rpc.client.dii.BasicCall.getResponseDeserializer(BasicCall.ja=
    >va:364)
    > at =
    >com.sun.xml.rpc.client.dii.BasicCall.invoke(BasicCall.java:259)
    > at ClientwithWSDL.main(ClientwithWSDL.java:63)
    >
    > If someone can help me to fix the issue, it will be great.
    >
    > Thanks
    > Jeyakumar Raman.
    >
    >
    ><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    ><HTML><HEAD>
    ><META http-equiv=3DContent-Type content=3D"text/html; =
    >charset=3Diso-8859-1">
    ><META content=3D"MSHTML 6.00.2713.1100" name=3DGENERATOR>
    ><STYLE></STYLE>
    ></HEAD>
    ><BODY bgColor=3D#ffffff>
    ><DIV><FONT face=3DCourier size=3D2>Hi Jayakumar,</FONT></DIV>
    ><DIV><FONT face=3DCourier size=3D2></FONT> </DIV>
    ><DIV><FONT face=3DCourier size=3D2>From the stack trace it looks like
    >=
    >you are using=20
    >sun's</FONT></DIV>
    ><DIV><FONT face=3DCourier size=3D2>RI of JAX-RPC. I am not sure
    >=
    >what is going=20
    >wrong with RI.</FONT></DIV>
    ><DIV><FONT face=3DCourier size=3D2></FONT> </DIV>
    ><DIV><FONT face=3DCourier size=3D2>WLS 7.0 got its own implementation
    >of =
    >
    ></FONT><FONT face=3DCourier size=3D2>JAX-RPC. Check</FONT></DIV>
    ><DIV><FONT face=3DCourier size=3D2>out the link below for =
    >details:</FONT></DIV>
    ><DIV><FONT face=3DCourier size=3D2></FONT><FONT face=3DCourier=20
    >size=3D2></FONT> </DIV>
    ><DIV><FONT face=3DCourier size=3D2><A=20
    >href=3D"http://edocs.bea.com/wls/docs70/webserv/index.html">http://edocs.=
    >bea.com/wls/docs70/webserv/index.html</A></FONT></DIV>
    ><DIV><FONT face=3DCourier size=3D2></FONT> </DIV>
    ><DIV><FONT face=3DCourier size=3D2></FONT> </DIV>
    ><DIV><FONT face=3DCourier size=3D2>Let us know if you need more=20
    >details.</FONT></DIV>
    ><DIV><BR>-- <BR><BR>regards,<BR>-manoj</DIV>
    ><DIV> </DIV>
    ><DIV><BR> </DIV>
    ><BLOCKQUOTE=20
    >style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; =
    >BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
    > <DIV>"Jeyakumar" <<A=20
    > href=3D"mailto:[email protected]">[email protected]</A>>
    >=
    >wrote in=20
    > message <A=20
    > =
    >href=3D"news:[email protected]">news:[email protected]=
    >a.com</A>...</DIV><BR>Hi<BR><BR>I=20
    > have developed a sample Web Service (RPC based), it returns Customer
    >=
    >Value=20
    > Object<BR>when client calls getCustomer method.<BR><BR>I have written
    >=
    >a Client=20
    > (attached the client source code) to invoke the web service<BR>when
    >=
    >the client=20
    > invokes the Web Service it throws an Exception , the=20
    > Exception<BR><BR><BR>Exception in thread "main" serialization error:
    >=
    >no=20
    > serializer is registered for<BR>(null,=20
    > {java:customer}Customer)<BR>
    >=
    >at=20
    > =
    >com.sun.xml.rpc.encoding.DynamicInternalTypeMappingRegistry.getSerializer=
    >(DynamicInternalTypeMappingRegistry.java:62)<BR><BR> &nb=
    >sp; =20
    > at=20
    > =
    >com.sun.xml.rpc.encoding.soap.SOAPResponseSerializer.initialize(SOAPRespo=
    >nseSerializer.java:72)<BR> =20
    > at=20
    > =
    >com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.initialize(Reference=
    >ableSerializerImpl.java:47)<BR> =
    >=20
    > at=20
    > =
    >com.sun.xml.rpc.client.dii.BasicCall.createRpcResponseSerializer(BasicCal=
    >l.java:382)<BR> =20
    > at=20
    > =
    >com.sun.xml.rpc.client.dii.BasicCall.getResponseDeserializer(BasicCall.ja=
    >va:364)<BR> =20
    > at=20
    > =
    >com.sun.xml.rpc.client.dii.BasicCall.invoke(BasicCall.java:259)<BR> =
    > =20
    > at ClientwithWSDL.main(ClientwithWSDL.java:63)<BR><BR>CAUSE:<BR><BR>no
    >=
    >
    > serializer is registered for (null,=20
    > {java:customer}Customer)<BR>
    >=
    >at=20
    > =
    >com.sun.xml.rpc.encoding.TypeMappingUtil.getSerializer(TypeMappingUtil.ja=
    >va:41)<BR> =20
    > at=20
    > =
    >com.sun.xml.rpc.encoding.InternalTypeMappingRegistryImpl.getSerializer(In=
    >ternalTypeMappingRegistryImpl.java:287)<BR> =
    > =20
    > at=20
    > =
    >com.sun.xml.rpc.encoding.DynamicInternalTypeMappingRegistry.getSerializer=
    >(DynamicInternalTypeMappingRegistry.java:47)<BR><BR> &nb=
    >sp; =20
    > at=20
    > =
    >com.sun.xml.rpc.encoding.soap.SOAPResponseSerializer.initialize(SOAPRespo=
    >nseSerializer.java:72)<BR> =20
    > at=20
    > =
    >com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.initialize(Reference=
    >ableSerializerImpl.java:47)<BR> =
    >=20
    > at=20
    > =
    >com.sun.xml.rpc.client.dii.BasicCall.createRpcResponseSerializer(BasicCal=
    >l.java:382)<BR> =20
    > at=20
    > =
    >com.sun.xml.rpc.client.dii.BasicCall.getResponseDeserializer(BasicCall.ja=
    >va:364)<BR> =20
    > at=20
    > =
    >com.sun.xml.rpc.client.dii.BasicCall.invoke(BasicCall.java:259)<BR> =
    > =20
    > at ClientwithWSDL.main(ClientwithWSDL.java:63)<BR><BR>If someone can
    >=
    >help me=20
    > to fix the issue, it will be great.<BR><BR>Thanks<BR>Jeyakumar=20
    >Raman.</BLOCKQUOTE></BODY></HTML>
    >
    >
    [att1.html]

  • How we can limit the number of concurrent calls to a WCF service without use the Singleton pattern or without do the change in BizTalk Configuration file?

    How can we send only one message to a WCF service at a time? How we can limit the number of concurrent calls to a WCF service without use the Singleton pattern or without do the change in BizTalk Configuration file? Can we do it by Host throttling?

    Hi Pawan,
    You need to use WCF-Custom adapter and add the ServiceThrottlingBehavior service behavior to a WCF-Custom Locations.
    ServiceThrottlingBehavior.MaxConcurrentCalls - Gets or sets a value that specifies the maximum number of messages actively processing across a ServiceHost. The MaxConcurrentCalls property specifies the maximum number of messages actively
    processing across a ServiceHost object. Each channel can have one pending message that does not count against the value of MaxConcurrentCalls until WCF begins to process it.
    Follow MSDN-
    http://msdn.microsoft.com/en-us/library/ee377035%28BTS.10%29.aspx
    http://msdn.microsoft.com/en-us/library/system.servicemodel.description.servicethrottlingbehavior.maxconcurrentcalls.aspx
    I hope this helps.
    Rachit
    If this answers your question please mark it accordingly. If this post is helpful, please vote as helpful by clicking the upward arrow mark next to my reply.

  • Could not generate stub objects for web service invocation in ColdFusion

    I was able to call the services on the development box - windows server without any problem at all, everything was working fine but the moment i uploaded to a linux box production server I get this error. "Could not generate stub objects for web service invocation in ColdFusion"
    What could be the cause of this problem, i have googled a lot but no solution yet any ideas.

    Let me make it simple:
    1. Server A is our development server.- hosted inhouse with coldfusion installed.
    2. Server B is our production server - a linux server with coldfusion installed hosted on the internet
    3. Server C is a third party server containing the webservice - this is a windows server with .net
    coldfusion is installed on Server A, the code works here and can connect to server C without any problem. It gets the required respone
    but when the code was uploaded to server c it gives the error when we run it.
    now i tried just a simple code which works fine on server A below:
    <cfinvoke webservice="http://www.webservicex.net/CurrencyConvertor.asmx?WSDL" method="ConversionRate" returnvariable="ConversionRateResult">
        <cfinvokeargument name="FromCurrency" value="EUR" />
        <cfinvokeargument name="ToCurrency" value="USD" />
    </cfinvoke>
    <cfdump var="#ConversionRateResult#" />
    But when i uploaded it to server C: it returns the error
    Cannot generate stub objects for web service invocation.
    Name: http://www.webservicex.net/CurrencyConvertor.asmx?WSDL. WSDL: http://www.webservicex.net/CurrencyConvertor.asmx?WSDL. java.io.FileNotFoundException: /opt/coldfusion8/stubs/WS728929035/NET/webserviceX/www/Currency.java (No such file or directory) It is recommended that you use a web browser to retrieve and examine the requested WSDL document to ensure it is correct. If the requested WSDL document cannot be retrieved or is dynamically generated, it is likely that the target web service has programming errors.
    The error occurred in /home/works/public_html/currency.cfm: line 7
    5 :     <cfinvokeargument name="FromCurrency" value="EUR" />
    6 :
    7 :     <cfinvokeargument name="ToCurrency" value="USD" />
    8 :
    9 : </cfinvoke>
    Now if you try the preceeding code on a windows environment  it works fine but the moment you put in the in the linux environment it generates this error
    I feel that the error may actually be :
    java.io.FileNotFoundException: /opt/coldfusion8/stubs/WS728929035/NET/webserviceX/www/Currency.java (No such file or directory)
    but i am clueless as to what to do next
    Ok so I tried the wget command on the linux
    this is what i got
    -bash-3.2# wget http://www.webservicesx.net/CurrencyConvertor.asmx?WDSL
    --2011-07-02 23:23:42--  http://www.webservicesx.net/CurrencyConvertor.asmx?WDSL
    Resolving www.webservicesx.net... 216.8.179.25
    Connecting to www.webservicesx.net|216.8.179.25|:80... connected.
    HTTP request sent, awaiting response... 403 Forbidden
    2011-07-02 23:23:43 ERROR 403: Forbidden.

  • Create a virtual classroom via Adobe Connect 9 Web Services

    Is it possible to create a virtual classroom via Adobe Connect 9 Web Services? I could not find a way in "Using Adobe Connect 9 Web Services" documentation.

    The answer of Jorma Jenning is almost correct. I investigated it myself and finally made a working solution.
    The trick is that virtual classroom does not have a special type, instead it is a "meeting inside trainings folder with the icon of virtual-classroom". Kinda strange logic and to add another level of hell the "trainings folder" is the one with the type "my-courses", so, finally, we get the the following workflow:
    1. Call h-ttps://example.com/api/xml?action=sco-shortcuts and filter sco-s until you find one with the type="my-courses" and remember its sco-id — this will be your folder-id.
    2. call  h-ttps://example.com/api/xml?action=sco-update&type=meeting&icon=virtual-classroom&name=October All Hands Meeting
              &folder-id=2006258750&date-begin=2006-10-01T09:00
              &date-end=2006-10-01T17:00&url-path=october
    The thing with icon is important.
    Note that if you call report-my-training service immediately after sco-update you won't see this virtual-classroom. This is because the default permissions do not allow that. Add yourself to the user list via permissions-update and it will appear in your training list. This is different from creating virtual classroom from web interface as there you are added as a host by default.

  • Call function in background task... How to get the result?

    I want to use Call function in background task parameter.
    But I cannot find the result of this function. (No export parameter, no table result, no exception)
    How to get the result of this function module? Correct or not?

    Hi Heinz,
    You can check the result in SM58 transaction.
    For more information pls. refer this thread :
    No IMPORTING parameters allowed in CALL FUNCTION IN BACKGROUND TASK
    Best regards,
    Prashant

  • Java.lang.NullPointerException while creating virtual classroom via Adobe Connect 9 Web Services

    Hello all, I am trying to create a virtual classroom via Adobe Connect 9 Web Services with the code below.
    https://XXXXXXXX.adobeconnect.com/api/xml?action=sco-update&type=virtual-classroom&name=My Virtual Classroom&folder-id=1358451232&date-begin=2014-01-02T10:00&date-end=2014-01-02T11:00
    And the result below:
    <results>
    <status code="internal-error">
    <exception>java.lang.NullPointerException</exception>
    </status>
    </results>
    What could be the reason of this problem? I need your help.

    Hi Teomanx
    To create a virtual classroom, you have to give type=meeting & icon = virtual-classroom. So the correct syntax is :
    https://XXXXXXXX.adobeconnect.com/api/xml?action=sco-update&type=meeting&icon=virtual-clas sroom&name=My Virtual Classroom&folder-id=1358451232&date-begin=2014-01-02T10:00&date-end=2 014-01-02T11:00.
    Hope that helps.
    Thank you

  • How to create objects to paint itselfs without specifiy the location

    How to create objects to paint itselfs without specifiy the location using Java 2D

    shot in the dark: pass in the Graphics2D context to the method ?

  • How to call Axis 2.0  web service without wsdl

    Hi,
    Is it possible that I can call Axis 2.0 asynchronous web service in orabpel without wsdl.? As Axis 2.0 is not generating wsdl file.
    Regds,
    Farooq

    A Web Service without a WSDL describing it??? Seems like a contradiction to me...
    Are you 100% sure about this? I am not an Axis expert, but this sounds strange.

  • Have the capability that  let Entity Objects from Web Services Datasources?

    Have the capability that let Entity Objects from Web Services Datasources? or
    where can we found the example about implement Entity Objects from Web Services Datasources ?

    I'm not sure what are you asking for. If you are looking to create a data-control based on a web service then this online demo might help:
    http://www.oracle.com/technology/products/jdev/viewlets/1013/WebServicesAndADF_viewlet_swf.html
    Or are you asking how to expose an ADF Business Component as a Web service?

  • Calling a java class from a java web service

    I have deployed a web service to weblogic 8.1 SP5 and now i want to call a simple java class from that web service.How can i do it.

    Hi jazz123,
    There's an example in the [*Java Web Services Tutorial*|http://java.sun.com/webservices/docs/2.0/tutorial/doc/] : see Chapter 1: Building Web Services with JAX-WS - A Simple JAX-WS Client.

  • Flex and CFC with Remote Object

    I wrote a simple cold fusion componenet on my webserver at:
    http://www.paramountmediainc.com/webservices/eadexchange/agent_sys.cfc
    Now I want to play with that in Flex with a Remote Object.
    I'm writing the flex on my local machine. I tried this approach but
    was uncessfull:
    <mx:RemoteObject id="acctRO" showBusyCursor="true"
    source="webservices.eadexchange.agent_sys"
    endpoint="
    http://www.paramountmediainc.com/flashservices/gateway">
    I get the following error ...
    TypeError: Error #1034: Type Coercion failed: cannot convert
    Object@3b15da1 to mx.messaging.messages.ErrorMessage.
    Any ideas what I'm doing wrong here?

    You cant really replace Struts with Flex, maybe a view part
    , thats about is, you still need backend processioning
    logic,all that you are asking is difficult to answer is one reply,
    IMHO, best thing you can do is to dive into following URLs :
    http://www.adobe.com/devnet/flex/
    http://livedocs.adobe.com/flex/3/html/help.html?content=Part2_DevApps_1.html
    http://livedocs.adobe.com/blazeds/1/blazeds_devguide/
    http://livedocs.adobe.com/flex/3/html/help.html?content=Part6_ProgAS_1.html
    and of course your best friend :
    http://livedocs.adobe.com/flex/3/langref/index.html

  • Using authorisation object in web services

    HI ,
    I create a WS proxy via ESR and I want to avoid malicious attack ,
    do i need to use the Following authorization object ?
    AUTHORITY-CHECK OBJECT 'S_ICF'
            ID 'ICF_FIELD' FIELD 'PROXY'
            ID 'ICF_VALUE' FIELD 'PROXY_NAME'.
    Regards
    James
    Edited by: James Herb on Feb 25, 2010 9:45 AM

    S_ICF is to protect the SAP auth. group of the proxy itself from being called (and an impact on admin access in SICF as well), but with ESR you will most likely have to give that to all your users and still you don't know which service they are consuming. So... use S_SERVICE.
    As the name of such a URL generally exceeds the length of an authorization field... S_SERVICE uses a "hash" to represent it. Executing the service will generate the hash.
    The easy way to collect them is via an ST01 trace on each application server and maintain SU24 manually.
    The Rolls-Royce way to collect them is via the "original data" trace of SU22, then process the results carefully in SU25 step 2b... thereby maintaining SU24. Take a closer look at the posts by SAP security guru Frank Buchholz in the thread Secure custom developer programs and transactions for more details.
    I assume that you are a developer so if you have not used this before and what I have described above makes only limited sense for you, then I suggest talking to the security person on site to show it to you or going to a training on it the first time.
    Anyway, if the checks are "native" in the system, then this is a security job so find the person building the roles for the services. Most likely they are already ontop of this and will take care of it for you.
    Cheers,
    Julius

  • Calling helper class that refrence to WCF web service

    Hi I have a BizTalk projects that calls a helper class. now the helper class receive the message and a counter and is suppose via the class to create a login to a WCF
    web service and then synchronize the message to this WCF web service.<o:p></o:p>
    this is class:<o:p></o:p>
    public static string SyncConcerto(XLANGMessage msg, int count)
    SelectResponse select = (SelectResponse)msg[0].RetrieveAs(typeof(SelectResponse));
    ConcertoService.ExternalMappingServiceClient concertoServ = new ConcertoService.ExternalMappingServiceClient();
    ConcertoService.ExternalMappingItem extMapItem = new ConcertoService.ExternalMappingItem();
    ConcertoService.ExternalMappingServiceResponse extLogonResp = new ConcertoService.ExternalMappingServiceResponse();
    ConcertoService.ExternalMappingServiceResponse extSyncResp = new ConcertoService.ExternalMappingServiceResponse();
    extLogonResp = concertoServ.Logon("*****", "******", true);
    if (extLogonResp.StatusCode == 1)
    if (count>0)
    for (int i = 0; i < count; i++)
    extMapItem.Attribute1 = select.SelectResult[i].CNS_CONCERTO_PROJECTSRECORDSELECT.REGION_NAME;
    extMapItem.Attribute2 = select.SelectResult[i].CNS_CONCERTO_PROJECTSRECORDSELECT.PROJECT_NUMBER;
    extMapItem.Attribute3 = select.SelectResult[i].CNS_CONCERTO_PROJECTSRECORDSELECT.PRODUCT_NAME;
    extMapItem.ProjectName = select.SelectResult[i].CNS_CONCERTO_PROJECTSRECORDSELECT.PROJECT_NAME;
    extMapItem.ProjectMgr = select.SelectResult[i].CNS_CONCERTO_PROJECTSRECORDSELECT.PM_NAME;
    //extMapItem.ProjectMgr = select.SelectResult.CNS_CONCERTO_PROJECTSRECORDSELECT.PM_NAME;
    extMapItem.Division = select.SelectResult[i].CNS_CONCERTO_PROJECTSRECORDSELECT.DIVISION_NAME;
    extMapItem.Subject = select.SelectResult[i].CNS_CONCERTO_PROJECTSRECORDSELECT.CUSTOMER_NAME;
    extMapItemArr[i] = extMapItem;
    extSyncResp = concertoServ.SynchronizeExternalAttributeData(extMapItemArr);
    if (extSyncResp.StatusCode == 1)
    return "sync success login success";
    else
    return "success login sync faild";
    else if (extLogonResp.StatusCode == 2)
    return "TimeOut";
    return "Failed";
    Now it keeps throwing exception in this line of code: ConcertoService.ExternalMappingServiceClient concertoServ = new ConcertoService.ExternalMappingServiceClient();
    saying he needs a valid endpoint. but he has the app.config file already that stats his endpoint.
    What am I doing wrong, since I have never done a thing like that before.
    And also I can't use the WCF web service in the normal BIZTALK way due to login operation he needs to do. <o:p></o:p>
    Any advice on how to continue?<o:p></o:p>

    the WCF has a logon operation where I enter a user name and password, it doesn't return a session key meaning I can't send a message to the WCF WS (Biztalk is stateless) that doe's the logon operation and the synchronize operation. so I had to do it with
    the helper class. 
    and Morten I know this is very bad practice but I don't have choice for now. 
    Morten another question since we are using Biztalk 2013 (New Enviroment) our BTSNTSvc.exe.config is empty:
    <?xml version="1.0" ?>
    <configuration>
    <startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0" />
    </startup>
    <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    <probing privatePath="BizTalk Assemblies;Developer Tools;Tracking;Tracking\interop" />
    </assemblyBinding>
    </runtime>
    <system.runtime.remoting>
    <channelSinkProviders>
    <serverProviders>
    <provider id="sspi" type="Microsoft.BizTalk.XLANGs.BTXEngine.SecurityServerChannelSinkProvider,Microsoft.XLANGs.BizTalk.Engine" securityPackage="ntlm" authenticationLevel="packetPrivacy" />
    </serverProviders>
    </channelSinkProviders>
    <application>
    <channels>
    <channel ref="tcp" port="0" name="">
    <serverProviders>
    <provider ref="sspi" />
    <formatter ref="binary" typeFilterLevel="Full"/>
    </serverProviders>
    </channel>
    </channels>
    </application>
    </system.runtime.remoting>
    </configuration>
    where do I insert my end point and how?

Maybe you are looking for