Return channel implementation in different STB

Hi everybody!
We are testing our application in three different Set Top Boxes (A)Samsung DTB-S500F, B) Philips DTR4600 and C) Humax DTT-4000).
According to the standard "On devices whose return channel can be connected or disconnected, connecting a java.net.Socket or a java.
net.URLConnection to a host addressed via the return channel shall automatically setup a connection to the default connection target subject to the application having return channel permission for the default ISP. Such connections shall be automatically isconnected after a time out period defined in the Navigator.".
When I try to get a Socket in STBs B and C, I must reserve the return channel, connect it and then I can get the socket. But when doing this with STB A, the application fails because the STB tries to reserve and connect the return channel himself.
I have notice different behaviours in other aspects, such as HSinglelineEntry.
I suppose that according to the standar, STB A is the correct one; but our application should work on every STB. Any suggestion on what line should we follow? Should we respect the standard and expect that in future every STB will respect it, or should we add some kind of tricks to the code in order to avoid this kind of situations?
Thanks.

maybe we can help.
i have a ?
did u getting application menu at sceen. ?
i need to see your DB defult , u may have a variable in wrong position.
if u eed help, just let me now..
good day

Similar Messages

  • Return channel problem

    Hi guys,
    I have a little problem.
    I am tring to use the return channel. I have an ADB STB.
    My main class try to create the connection using the singleton class RCInterfaceManager. It get a ConnectionRCInterface object and then I use reserve and connect method to establish the connection.
    My main class implements the ResourceClient interface so I pass this object as paramether in the reserve calling.
    I set the new connection target using the ConnectionParameters class.
    The problem is that the application try to dial with the external server and after a few second receives a PPP busy error in the log file.
    What is wrong?
    Thanks to all

    Hi guys,
    I have a little problem.
    I am tring to use the return channel. I have an ADB
    STB.
    My main class try to create the connection using the
    singleton class RCInterfaceManager. It get a
    ConnectionRCInterface object and then I use reserve
    and connect method to establish the connection.
    My main class implements the ResourceClient interface
    so I pass this object as paramether in the reserve
    calling.
    I set the new connection target using the
    ConnectionParameters class.
    The problem is that the application try to dial with
    the external server and after a few second receives a
    PPP busy error in the log file.
    What is wrong?
    Thanks to allHi
    I am trying to get connection with the return channel with a development STB(ADB). I am using this code:
    RCInterfaceManager rcm =
    RCInterfaceManager.getInstance();
    RCInterface[] interfaces = rcm.getInterfaces();
    if (interfaces[0] instanceof ConnectionRCInterface) {
    ConnectionRCInterface myInterface;
    myInterface = (ConnectionRCInterface)interfaces[0];
    try {
    myInterface.reserve();
    ConnectionParameters myConnectionParameters;
    myConnectionParameters = new ConnectionParameters
    ("0199604235697", "username", "password");
    myInterface.setTarget(myConnectionParameters);
    myInterface.connect();
    myInterface.disconnect();
    myInterface.release();
    } catch (permissionDeniedException e) {
    return;
    else {
    } Here there is the log file:
    [1#1] Trying to connect default return channel...
    connected.
    link up...
    waiting up to 30s for IPCP to come up...
    ppp: PPP_EV_PEER_REFUSE
    Disconnecting modem. IPCP is down.
    ppp: PPP_EV_ALREADY_CLOSED
    [1#1] Default return channel connection failed.
    [1#1:2] java.net.SocketException: ECONNABORTED - Software caused connection abort
    [1#1:2] at java.net.PlainSocketImpl.doConnect()
    [1#1:2] at java.net.PlainSocketImpl.connectToAddress()
    [1#1:2] at java.net.PlainSocketImpl.connect()
    [1#1:2] at java.net.Socket.<init>()
    [1#1:2] at java.net.Socket.<init>()
    [1#1:2] at sun.net.NetworkClient.doConnect()
    [1#1:2] at sun.net.www.http.HttpClient.openServer()
    [1#1:2] at sun.net.www.http.HttpClient.openServer()
    [1#1:2] at sun.net.www.http.HttpClient.<init>()
    [1#1:2] at sun.net.www.http.HttpClient.<init>()
    [1#1:2] at sun.net.www.http.HttpClient.New()
    [1#1:2] at sun.net.www.protocol.http.HttpURLConnection.connect()
    [1#1:2] at lib.utility.Connessione.<init>()
    [1#1:2] at viasi.XletNazioni.inCaricamento()
    [1#1:2] at viasi.XletNazioni.paint()
    [1#1:2] at java.awt.Container.paint()
    [1#1:2] at org.havi.ui.HScene.paint()
    [1#1:2] at org.havi.ui.HScene.update()
    [1#1:2] at sun.awt.otk.ComponentModel.handleEvent()
    [1#1:2] at java.awt.Component.dispatchEventImpl()
    [1#1:2] at java.awt.Container.dispatchEventImpl()
    [1#1:2] at java.awt.Window.dispatchEventImpl()
    [1#1:2] at java.awt.Component.dispatchEvent()
    [1#1:2] at java.awt.EventDispatchThread.run()
    What's the problem?Can you help me?

  • Starting event on a server from a STB via return channel - possible?

    Hello!
    I try to create an application in MHP to send an emergency-call via a STB.
    The STB is permanently connected to a server (intranet). Now I want to launch an event (popup-window, playing sounds, etc.) on the server via the STB.
    I thought of RPC, but didn't get it to work.
    I am able to write files on the server (via FTP). Is ist possible to monitor a directory and kick an event if a file is created?
    Thanks for help!

    It's certainly possilbe on the server side. This is more a question of how your server software is implemented and whether doing this imposes too much of a load on your server.
    I'm surprised that you couldn't get RPC to work. The return channel connection in an MHP box should support any IP traffic, although you will have to implement most of the protocol yourself.
    Steve.

  • Write Files through return channel

    Hi,
    i'm newer in this forum. I'm working in a MHP project, and I want to comunicate STB with the server (in this case, a PC running Apache Server).
    The question is �can I write a file in the server with data obtained on the STB? I think that it is posible via return channel, but i'm not sure. The idea is to write file (on the server) with the solutions entered by TV user in an application that have some tests. �Are other ways besides return channel to do it?
    Thanks ;)
    Regards

    Hello here you an example of login in my application:
    package es.admin.servlet;
    import java.io.IOException;
    import java.io.PrintWriter;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import es.admin.bd.PacienteBD;
    import es.admin.beans.Paciente;
    import es.admin.dao.PacienteDAO;
    * Servlet implementation class for Servlet: LoginPatient
    public class LoginPatient extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
       static final long serialVersionUID = 1L;
        /* (non-Java-doc)
          * @see javax.servlet.http.HttpServlet#HttpServlet()
         public LoginPatient() {
              super();
         /* (non-Java-doc)
          * @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
         protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
              // TODO Auto-generated method stub
              processRequest(request,response);
         /* (non-Java-doc)
          * @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
         protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
              // TODO Auto-generated method stub
              processRequest(request,response);
         private void processRequest(HttpServletRequest request,HttpServletResponse response) throws IOException
              Paciente paciente = new Paciente();
              paciente.setDni(request.getParameter("dni"));
              paciente.setContrasenia(request.getParameter("contrasenia"));
              boolean ok = PacienteBD.compruebaPaciente(paciente.getDni(),paciente.getContrasenia());
              response.setContentType("text/plain;charset=UTF-8");
              PrintWriter p = response.getWriter();
              if (ok)
                   p.println("true");
              else
                   p.print("false");
    public class PacienteBD {
         public static boolean compruebaPaciente(String dni,String password)
              boolean correcto = false;
              Paciente aux = PacienteDAO.BuscarPaciente(dni);
              if ((aux!=null)&&(aux.getContrasenia().equals(password)))
                   correcto = true;
              return correcto;
    }then you use from the java code :
    new URL ("http://admin/login?usuario=xxx&passw=xxx")
    thats all

  • Return channel

    I'm developing the return channel. I use a STB with standard modem.
    But the connection failed.
    This is my code:
    RCInterfaceManager rcm = RCInterfaceManager.getInstance();
    RCInterface[] interfaces = rcm.getInterfaces();
    myInterface = (ConnectionRCInterface) interfaces[0];
    //HERE I reserve the interface using the method
    //reserve(ResourceClient resourceClient, Object obj)
    //but I just declare the implement of ResuorceClient in my
    //connection class.
    //All the methods are empty!!!!(COULD BE A PROBLEM???):
    //implements ResourceClient
    //public void notifyRelease(ResourceProxy rsPrx)
    //public void release(ResourceProxy rsPrx)
    //public boolean requestRelease
    //(ResourceProxy rsPrx,java.lang.Object requestData)
    //return true;
    myInterface.reserve(this, null);
    myInterface.setTargetToDefault();
    //I make the call to a ISP from an internal phone line.
    //So I have to use the "0," before the number to the provider
    //Could be the cause of the failure???
    ConnectionParameters myConnectionParameters;
    myConnectionParameters = new ConnectionParameters("0,0643xxxxxxx", "XXXXXX", "XXXXXXXXi");
    myInterface.setTarget(myConnectionParameters);
    myInterface.connect();
    // HERE I do everithing with the connection
    myInterface.disconnect();
    myInterface.release();
    Another question is: can I use ALL providers (for example one that I use with my pc) or I have to search a particular PROVIDER for STB?
    Is it too much what I' m asking??
    JUST IF YOU 'RE HERE : THANK YOU

    I'm developing the return channel. I use a STB with standard modem.
    But the connection failed.
    This is my code:
    RCInterfaceManager rcm = RCInterfaceManager.getInstance();
    RCInterface[] interfaces = rcm.getInterfaces();
    myInterface = (ConnectionRCInterface) interfaces[0];
    //HERE I reserve the interface using the method
    //reserve(ResourceClient resourceClient, Object obj)
    //but I just declare the implement of ResuorceClient in my
    //connection class.
    //All the methods are empty!!!!(COULD BE A PROBLEM???):
    //implements ResourceClient
    //public void notifyRelease(ResourceProxy rsPrx)
    //public void release(ResourceProxy rsPrx)
    //public boolean requestRelease
    //(ResourceProxy rsPrx,java.lang.Object requestData)
    //return true;
    myInterface.reserve(this, null);
    myInterface.setTargetToDefault();
    //I make the call to a ISP from an internal phone line.
    //So I have to use the "0," before the number to the provider
    //Could be the cause of the failure???
    ConnectionParameters myConnectionParameters;
    myConnectionParameters = new ConnectionParameters("0,0643xxxxxxx", "XXXXXX", "XXXXXXXXi");
    myInterface.setTarget(myConnectionParameters);
    myInterface.connect();
    // HERE I do everithing with the connection
    myInterface.disconnect();
    myInterface.release();
    Another question is: can I use ALL providers (for example one that I use with my pc) or I have to search a particular PROVIDER for STB?
    Is it too much what I' m asking??
    JUST IF YOU 'RE HERE : THANK YOU

  • Connect to Return channel: ERROR

    Hi everyone,
    I am testing return channel, using code as following:
    try {
    myRCInterface.reserve(null,null);
         myRCInterface.setTarget(new ConnectionParameters("1269", "vnn1269","vnn1269"));
         myRCInterface.connect();
    //...Here is something for exchange data beetwen receiver and server
    myRCInterface.disconnect();
         myRCInterface.release();
    catch(IncompleteTargetException e)
         System.out.println("IncompleteTargetException: " + e.getMessage());
    catch(PermissionDeniedException e)
         System.out.println("PermissionDeniedException: " + e.getMessage());
    When i test this code on DTT-4500 stb, error occurs just at line myRCInterface.setTarget(...): PermissionDeniedException:null
    I wonder if this code is wrong? or modem of my stb is fault?
    Please tell me why this error occurs?
    I also need help for DTT-4000 much. The function "Modem Test" of this stb always says "connected successfully" while dialing to any phone number (even unavailable numbers).
    What i know is that DTT-4500 are sold mainly in Italia. If someone in Italia or have used this stb, please tell me how to setup modem for it.
    Thanks alot,
    Nghia.

    hi,
    this is quite weird, because it looks like resource reservation did not succeed. but failure to reserve should be reported during the call to reserve().
    this looks pretty much like a bug in the stb (well, this is theoretically possible that something reserved the modem just after your reserve, but very unlikely), but maybe it has something to do with the NULL ResourceClient you pass to reserve() - i think you shouldnt do it, because behavior of reserve() with NULL argument is unspecified. I suggest you write something like
    myRCInterface.reserve(new ResourceClient() { void notifyRelease(ResourceProxy proxy) { ... } ... and so on.
    try this and see if it helps.
    is this is development stb or one from a store shelf? i wonder because later you may hit SecurityException, as access to modem is restricted to applications signed with a certificate, which you will not have unless you have a dev. stb. i dont know that stb, but you may lucky because mhp security model didnt actually survive in the italian dtt market, so maybe there wont be any problem.
    cheers

  • MHP serial return channel

    Does anyone know how to use the serial port present in some set-top boxes?
    Is it a RS232 serial port?
    It's intended to provide a way of using other return device than a modem, but since the MHP spec. only defines that the return channel is a TCP/IP connection and the basic connection handle API, I don't know how to setthe return channel to be by the serial port.
    I also need direct access to it, not over TCP/IP, but using streams or something like. Has anyone written some code to talk to this port, or can indicate me som documentation references?

    There is requirement that an MHP box support an RS232 port, hence there are no standard API's to support it. All the Debug boxes I've seen use a serial port for debug (uploading xlets to debug are reading back trace messages written to standard out).
    If you want to use the return channel you'll need to look at the org.dvb.net.rc packages to set up the return channel. For example use:
    RCInterfaceManager.getInstance().getInterfaces();
    to find out what return channel hardware you've got attached to your STB. After you've set up the connection you can use the standard java.io and java.net packages to talk to your remote server.
    Hope this helps,
    Roger

  • Registry.lookup() return Remote object from different ip address

    I've got this error using
    Registry reg = LocateRegistry.getRegistry(serverName, Registry.REGISTRY_PORT);
    service = (ILogin) reg.lookup("service");and when I use debugger I've got this
    RegistryImpl_Stub[UnicastRef [liveRef: [endpoint:[10.240.161.66:1099](remote),objID:[0:0:0, 0]]]]
    Proxy[ILogin,RemoteObjectInvocationHandler[UnicastRef [liveRef: [endpoint:[10.240.161.54:2074](remote),objID:[-4308ea07:116adade605:-7fff, 9133145996543447416]]]]]Why the Registry return a service from different IP address ?
    I've run this code for several times and it works. But today it cannot connect to the RMIServer.
    Any idea ?

    Thanks, i found my missing prppertis is
    // optional. Defaults to localhost. Only needed if web server is running
    // on a different host than the appserver
    props.setProperty("org.omg.CORBA.ORBInitialHost", "localhost");
    // optional. Defaults to 3700. Only needed if target orb port is not 3700.
    props.setProperty("org.omg.CORBA.ORBInitialPort", "3700");
    to set the port and host back

  • Extend abstract class & implement interface, different return type methods

    abstract class X
    public abstract String method();
    interface Y
    public void method();
    class Z extends X implements Y
      // Compiler error, If I don't implement both methods
      // If I implement only one method, compiler error is thrown for not
      // implementing another method
      // If I implement both the methods,duplicate method error is thrown by 
      //compiler
    The same problem can occur if both methods throw different checked exceptions,or if access modifiers are different..etc
    I'm preparing for SCJP, So just had this weired thought. Please let me know
    if there is a way to solve this.

    Nothing you can do about it except for changing the design.
    Kaj

  • How can I use the same thread pool implementation for different tasks?

    Dear java programmers,
    I have written a class which submits Callable tasks to a thread pool while illustrating the progress of the overall procedure in a JFrame with a progress bar and text area. I want to use this class for several applications in which the process and consequently the Callable object varies. I simplified my code and looks like this:
            threadPoolSize = 4;
            String[] chainArray = predock.PrepareDockEnvironment();
            int chainArrayLength = chainArray.length;
            String score = "null";
            ExecutorService executor = Executors.newFixedThreadPool(threadPoolSize);
            CompletionService<String> referee = new ExecutorCompletionService<String>(executor);
            for (int i = 0; i < threadPoolSize - 1; i++) {
                System.out.println("Submiting new thread for chain " + chainArray);
    referee.submit(new Parser(chainArray[i]));
    for (int chainIndex = threadPoolSize; chainIndex < chainArrayLength; chainIndex++) {
    try {
    System.out.println("Submiting new thread for chain " + chainArray[chainIndex]);
    referee.submit(new Parser(chainArray[i]));
    score = referee.poll(10, TimeUnit.MINUTES).get();
    System.out.println("The next score is " + score);
    executor.shutdown();
    int index = chainArrayLength - threadPoolSize;
    score = "null";
    while (!executor.isTerminated()) {
    score = referee.poll(10, TimeUnit.MINUTES).get();
    System.out.println("The next score is " + score);
    index++;
    My question is how can I replace Parser object with something changeable, so that I can set it accordingly whenever I call this method to conduct a different task?
    thanks,
    Tom                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

    OK lets's start from the beginning with more details. I have that class called ProgressGUI which opens a small window with 2 buttons ("start" and "stop"), a progress bar and a text area. It also implements a thread pool to conducts the analysis of multiple files.
    My main GUI, which is much bigger that the latter, is in a class named GUI. There are 3 types of operations which implement the thread pool, each one encapsulated in a different class (SMAP, Dock, EP). The user can set the necessary parameters and when clicking on a button, opens the ProgressGUI window which depicts the progress of the respective operation at each time step.
    The code I posted is taken from ProgressGui.class and at the moment, in order to conduct one of the supported operations, I replace "new Parser(chainArray)" with either "new SMAP(chainArray[i])", "new Dock(chainArray[i])", "new EP(chainArray[i])". It would be redundant to have exactly the same thread pool implementation (shown in my first post) written 3 different times, when the only thing that needs to be changed is "new Parser(chainArray[i])".
    What I though at first was defining an abstract method named MainOperation and replace "new Parser(chainArray[i])" with:
    new Callable() {
      public void call() {
        MainOperation();
    });For instance when one wants to use SMAP.class, he would initialize MainOperation as:
    public abstract String MainOperation(){
        return new SMAP(chainArray));
    That's the most reasonable explanation I can give, but apparently an abstract method cannot be called anywhere else in the abstract class (ProgressGUI.class in my case).
    Firstly it should be Callable not Runnable.Can you explain why? You are just running a method and ignoring any result or exception. However, it makes little difference.ExecutorCompletionService takes Future objects as input, that's why it should be Callable and not Runnable. The returned value is a score (String).
    Secondly how can I change that runMyNewMethod() on demand, can I do it by defining it as abstract?How do you want to determine which method to run?The user will click on the appropriate button and the GUI will initialize (perhaps implicitly) the body of the abstract method MainOperation accordingly. Don't worry about that, this is not the point.
    Edited by: tevang2 on Dec 28, 2008 7:18 AM                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • MD5 implementation gives different hash values from java1.2 to java 1.3

    Hi,
    I have MD5 implementation using Java api. When i run the program using Java 1.2, I get one version of hash value. When i run the same program using Java 1.3/1.4 I get a different version of hash value.
    the hash value generated by java1.2 authecticates correctly with server but the one generated by 1.3/1.4 gives me authetication failure with the server.
    I serious doubt some encoding issue with md5 implementation from java 1.2 to java 1.3/1.4. I would like to know what is the root cause for getting a different hash with java 1.3/1.4
    Thanks
    sunil

    Here is the code, I am converting the string to bytes and then passing it to md.
    public static String getMD(String strInput) {
    /*---- Local Variable Declares ----*/
    String rStr = new String();
    try {
    MessageDigest md = MessageDigest.getInstance("MD5");
    md.update(strInput.getBytes("UTF-8"));
    byte[] challengeResponse = md.digest();
    System.out.println("Len of BYTE ary in JAVA:" + challengeResponse.length);
    rStr = new String(challengeResponse);
    } catch(Exception e) {
    System.out.println("\n\nException while calling getMD\n\n");
    e.printStackTrace();
    } /* end of try catch block */
    return rStr;
    When I run the code using java 1.2, I got the following is octal dump output
    "0000000 037677 135543 076565 063432 136210 040616 004766 177265"
    When I run the code using java 1.3/1.4, I go the following octal dump outpu
    "0000000 037477 037543 076565 063432 037477 040477 004477 037477"

  • How can i use two channels to show different voltages in DAQ ?

    my problem is that when i choose different channels to read the outputs from my sensors, it ignores the channels which i have choosen 0 or 1 and it puts 0 channel only for both sensors. and the result is one same reading at both output guages, one reading is steady and the other is fluctuating. how can i make it recognize each one differently, is the proplem at my programme ? help me please
    Attachments:
    fin.vi ‏58 KB

    Greetings,
    AI Waveform Scan.vi and AI Sample Channel.vi each have a Channel(s) input. You do not have anything wired to these inputs. By default, these inputs are both Channel 0. You should wire "0" to one of these inputs and "1" to the other.
    Good luck with your application.
    Spencer S.

  • Multiple channel data with different time stamp logging

    I have peaks and valleys from multiple channels with different time stamp but I am not able to log to a single file. Any idea on how to do this?
    Attachments:
    Single Point Peak Valley Log.vi ‏53 KB

    Hi Dennis,
    Sorry for that I have modified the VI.
    Because the peak and valley of every channel will occur at different time and I want to log the peak/valley with the time stamp.
    How can I log them on the same file.
    Attachments:
    Single Point Peak Valley Log_Mod.vi ‏53 KB

  • How to re-use one SOAP Sender Channel for two different messages?

    Hi!
    I have an XI Proxy to SOAP Sync Scenario. 5 messages uses only 2 channels - cc_XI_Sender and cc_SOAP_Receiver. All messages comes from one Sender Channel and goes to one Receiver channel, and it works fine.
    When I make the same for SOAP to XI Proxy Sync Scenario, I've got a problem. For example I have 2 different messages (mi_so_MSG_ONE and mi_so_MSG_TWO), so it works, if I had a two different sender channels (cc_SOAP_R1 and cc_SOAP_R2).
    If I set the same Sender Channel in both Sender Agreements (cc_SOAP_R1), only one message (mi_so_MSG_ONE) goes without errors. When I send a second message (mi_so_MSG_TWO), in SXMB_MONI this message comes from Business System (BS_TEST) as message type one (mi_so_MSG_ONE), and then in stage of transformation in Interface Determination goes to message mapping program for other kind of messages (MM_MSG_ONE_to_XI_PROXY). And then - error in message mapping.
    I try many URLs for both messages:
    1) http://host:port/XISOAPAdapter/MessageServlet?channel=:BS_TEST:cc_SOAP_R1&version=3.0&Sender.Service=&Interface=
    2) http://host:port/XISOAPAdapter/MessageServlet?channel=:BS_TEST:cc_SOAP_R1&version=3.0&Sender.Service=BS_TEST&Interface=*
    3) http://host:port/XISOAPAdapter/MessageServlet?channel=:BS_TEST:cc_SOAP_R1&version=3.0&Sender.Service=BS_TEST&Interface=...MyNameSpace...mi_so_MSG_TWO
    Message in payload:
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    <!--  Inbound Message   -->
    <MSG_TWO xmlns="urn:xxx:yyy:MyNameSpace" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">... some fields... </MSG_TWO>
    But in SOAP Header I see that is NOT second message!
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    < !--  Inbound Message   -->
    <SAP:Main>
      <SAP:MessageClass>ApplicationMessage</SAP:MessageClass>
      <SAP:ProcessingMode>synchronous</SAP:ProcessingMode>
      <SAP:MessageId>93233F70-3E2F-11DF-8CD3-00237D301CD6</SAP:MessageId>
      <SAP:TimeSent>2010-04-02T08:13:09Z</SAP:TimeSent>
      <SAP:Sender>
        <SAP:Service>BS_TEST</SAP:Service>
        <SAP:Interface namespace="urn:xxx:yyy:MyNameSpace">mi_so_MSG_ONE</SAP:Interface>
      </SAP:Sender>
      <SAP:Interface namespace="urn:xxx:yyy:MyNameSpace">mi_so_MSG_ONE</SAP:Interface>
      </SAP:Main>
    Is it correct that many kinds of messages cannot goes through one Sender Channel ? If not... How can I reuse one SOAP Sender Channel for both this messages?
    Thanks for helping.

    Thanks for answers!
    It means a webservice application will be deployed and exposed in PI using the associated Message Interface and its namespace information in the SOAP Sender channel.
    It means only one Sender Channel per one pair of names (name of Message Interface and name of namespace). And it will fail if I change something. And question is: why URL for sending SOAP message contains parameter "Interface"?
    "backward compatibility" or "for future use only"?
    Nothing happens when I change this parameter, seems that name of Interface comes from first of founded Sender Agreements.
    If the structures are the same
    No. Structures are different.
    Making one structure per all SOAP incoming messages looks workable, but... looks strange (in fact I have a lot of SOAP messages, more than 100 Sender channels).
    I found an information, that I can use one Sender channel per many messages with different structures only if I make this messages like different Operations in one Service Interface (in PI 7.1).
    But in this case in list of messages in SXMB_MONI I will see only a one name of Service Interface for all my messages and it's not so comfortably for supporting: to take a name of operation that fails I need to goes inside.
    In older version of XI (prior 7.1) using one sender channel per many messages allowed without any hints.

  • EJB lookup returned stub from a different classloader.

    I've written an EJB for doing authenitcation. This EJB is accessed by an security-mbean (BEA's login module).
    - The EJB is deployed in an EAR.
    - The EJB-stubs are extracted and is included as part of the MBEAN Jar.
    When I hit a webapp causing the EJB lookup to occur, the stub object returned is created by the webapp's classloader. This cause a ClassCastException when trying to cast the returned home interface into the home interface of the MBEAN's classloader.
    Note that all this is happening on the same BEA server running WLS8.1.
    I don't want to put the EJB jar on the system classpath so I can redeploy the EJB, the Application's EAR and the MBEAN to a cluster.
    -alex

    Robert Greig <[email protected]> wrote:
    Thanks for responding to my question, which newsgroup is more appropriate for
    my line of question?
    But before I move this thread, I would like to add:
    I've already handled the recursion problem on top of the ejb-lookup before JNDI
    becomes avaliable (while doing server startup) problem.
    The advantage with the EJB model is this. By changing the host/port configuration,
    I can switch between a local-authentication server or a remote provide authentication
    server network configuration.
    If I were to include the necessary classes in the mbean JAR from our application,
    there maybe resources issues since I now have 2 classloaders loading my server-portion
    of classes. Not sure how that will workout with resources and all. This model
    has the disadvantage of any classes I have in the mbean JAR will require updates
    outside my EAR. This wroks against the EAR deployment model.
    -alex
    Alex Cheung wrote:
    I've written an EJB for doing authenitcation. This EJB is accessedby an security-mbean (BEA's login module).
    - The EJB is deployed in an EAR.
    - The EJB-stubs are extracted and is included as part of the MBEANJar.
    This isn't a good approach. You are pretty much stuffed mainly for the
    reasons you outline.
    Also note that if you continue to go down this road you will have to
    handle the potential recursion (i.e accessing an EJB will invoke a
    security call to your provider!).
    Why do you need to implement this as an EJB? The main advantages of EJBs
    are security and container managed transactions neither of which is
    relevant here surely?
    Robert

Maybe you are looking for

  • How to access a file in Unix server from windows using java

    I want to access a file in unix server from windows using java program. I have the following code. I am able to open the url in a web browser. String urlStr="ftp:user:passwd@unix-server:ftp-port//javatest/test.csv;type=i"; URL url = new URL(urlStr);

  • Oracle Application Server 10.0.1.0.2

    When will forms and report services be available in the new release because i have install 10.0.1.0 without forms and report services. Moreover does anyone has an installation guide for installing only standalone forms and report services on Suse 9 E

  • How to reset ipod so it sets up like the first time it is used

    hi i have an ipod touch 4g and i am wondering how i can reset it so it is just like it was when i took it out of the package for the first time!

  • Opening the link in a big window

    Hi, When we click on any of the link it gets opened in the small window ,if we want to make the big we have to maximize it , is there any option that when clicking on the link gets directly opens in the big window How can this be done in WAD 3.5 Rega

  • IDOC RBDMIDOC - Internal error: Program read table idoc_structure

    Hi, We have scheduled background program RBDMIDOC for master data thru change pointers. This was running successfully for years. Suddenly since past few days the error is coming as below : Internal error: Program read table idoc_structure, command da