Is outside-in without EJB's possible?

Is it possible to create a web service from a wsdl (outside-in approach) without EJB's involved. in CE7.1
Regards
ABS

Yes, you can but manually. There is no such easy tool as for EJBs in NetWever Developer Studio(NWDS).
Using the the  NWDS  you can generate automaticaly Outside-In  web service sceletons but only with EJB endpoints.
Maybe you have already read that page:
http://help.sap.com/saphelp_nwce10/helpdata/en/46/7f2fef88190ad3e10000000a11466f/content.htm
But if you need a servlet-based web service  and you want to start from the WSDL, you can do it manually by creating a pure java class in web project and than adding the annotations  with values corresponding to the one from the WSDL. In this case you will need some more knowlage in web services area.
I hope that explainations help you.
Regards,
Yulie.

Similar Messages

  • Session Facade Pattern without EJB

    All of the session facade pattern examples that I can find are heavily emphasized on EJB. I am planning on implementing a system without EJB's, and am interested in the advantages of using the Session Facade pattern.
    Are there any good examples of using the Facade pattern outside of EJB to build a java server system? If there aren't, is there a better way to implement this type of strategy in a non-EJB system?

    What is the best way to allow the client to
    interact
    with Entity objects, without exposing them. ShouldI
    implement Value objects that are easily serialized
    for transfer across the network?
    If you are not using EJB or a distributed
    architecture, you do not need DTO's or VO's. They
    are an odious construct used to obviate the
    shortcomings of remote method calls over anetwork.
    I strongly disagree.
    They are an obvious and easy model used when the
    following characteristics of a system exist.
    - Different layers.
    - Related data items that are moved throughout the
    layers.
    - Different usage of the related data items by
    different layers.
    Yes, I agree. Note the qualification 'if you are not using a distributed architecture'.
    None of that has anything to do with remote method
    calls over a network. Point of fact the first time I
    used them was in a stand alone application with no
    network traffic except that needed by the database
    driver itself.
    Simply create your domain model objects as POJO's
    s (plain ole Java objects). Persist and retrieve
    your objects via DAO's (data access objects).Your
    service layer (facade) will sit on top of thedomain
    model, encapsulating method calls into logicalunits
    of work.
    And how exactly do you move the customer
    name/customer address from the DAO to the GUI level?I am assuming the dedicated remoting product the OP specifid, Hessian, will handle moving between the tiers, or at least between the controller/view and the business tier.
    - Saish

  • Anyway to use quartz to schedule jobs without EJB

    Hai all,
    I had a web application in jsp where i need to send automatic mails at regular intervals of time.For this scheduling process i had decided to use quartz. But i had too develop some ejb's for this purpose.As i am using tomcat server it's not possible for me to use EJB's. So is there any other way i can use quartz without ejb's to run a scheduled task?.
    I request your kind help and suggestions in this regard.
    Thank you.

    According to the iPod nano (5th generation) - User Guide you can video tape in landscape or portrait mode. By default, it is oriented in portrait mode (240x376), but due to an accelerometer, automatically switches to landscape mode (376x240) when rotated.
    When I hold the cam vertically, the recorded videos are sometimes in portrait mode with borders but not always. When I hold the cam horizontally (landscape), the recorded videos are always borderless.
    Which way are you holding the camera when you get videos with borders?

  • Using DAO ,TO Pattern without EJB

    Hi,
    I am developing a web application without EJB. I understand those patterns need not use EJB framework. However, it smees to me that without EJB, the role of TO may be simpler.
    In my design, the meaning of TO is to separate the layer between business tier and data access tier. Upon doing some back-end enquiry, the DAO create related TO which can be translate to the business / veiw objects. And the caching will be done on Web tier but not TO layer instead.
    Am I right? Would you please give some comments? Thanks a lot.

    What is the best way to allow the client to
    interact
    with Entity objects, without exposing them. ShouldI
    implement Value objects that are easily serialized
    for transfer across the network?
    If you are not using EJB or a distributed
    architecture, you do not need DTO's or VO's. They
    are an odious construct used to obviate the
    shortcomings of remote method calls over anetwork.
    I strongly disagree.
    They are an obvious and easy model used when the
    following characteristics of a system exist.
    - Different layers.
    - Related data items that are moved throughout the
    layers.
    - Different usage of the related data items by
    different layers.
    Yes, I agree. Note the qualification 'if you are not using a distributed architecture'.
    None of that has anything to do with remote method
    calls over a network. Point of fact the first time I
    used them was in a stand alone application with no
    network traffic except that needed by the database
    driver itself.
    Simply create your domain model objects as POJO's
    s (plain ole Java objects). Persist and retrieve
    your objects via DAO's (data access objects).Your
    service layer (facade) will sit on top of thedomain
    model, encapsulating method calls into logicalunits
    of work.
    And how exactly do you move the customer
    name/customer address from the DAO to the GUI level?I am assuming the dedicated remoting product the OP specifid, Hessian, will handle moving between the tiers, or at least between the controller/view and the business tier.
    - Saish

  • Activity price calculation without activity not possible.

    Hi,
    I got the following error when I execute KSII ;
    Activity price calculation without activity not possible.
    Message no. KP230
    Diagnosis
    A program error occurred during activity price calculation. The SAP System could not determine the activity price for activity type 250902 in cost center 25093015 because only costs were entered, not activity quantities. The SAP System calculates the activity price by dividing the costs by the activity quantity.
    System Response
    The SAP System sets the activity price to zero.
    Procedure
    Inform your system administrator.
    Please advice why the error occured?

    Hi SAP Genes,
    I am finding an error in One of our Product line "HPI India" where our Cost of Sales Accounting actual COGS cost is very less in comparison with the standard as in the past.as it is marked, as expected as we set it up in the begining of the Year we use Standard Cost we use Aug-July FY, only we are facing this error for this FY 11-12.
    Please take a look at the COGS for HPI. which is marked in Blue all these cost are Highlited,  The actual COGS cost is very less in comparison with the standard as in the past.
    And for rest of the Product Line item is working fine,
    Please suggest me the cause, i am attaching the Analysis sheet as well for your guidance.
    Regards,
    Vijay

  • Is the extraction without Transfer rule possible?

    Can you help me out for this question.
    Thanks in advance
    Kay
    Is the extraction without Transfer rule possible?

    Until the version 3.x we need transfer rules for physical transfer of data.

  • How to define your own context in an EJB environment - possibly distributed

    I would like to setup a context (an object accissible per logical thread) in an EJB environment, but I am too unfamiliar with the options I may have.
    My objective is to create a context in which I may set a value, then invoke a method on an object (which in turn invokes a method on another object and so forth) and eventually get back the value from the context. In other words I am trying to pass a value without passing it as a parameter. More specifically, I have written a JDBC Driver wrapper in which I want to intercept a number of method calls and based on the context settings perform one or the other JDBC preprocessing. The reason for not passing the values as parameters is to interfere as little as possible with any environment in which this code is to be integrated. I simply want to set the context and get the context (in my JDBC wrapper) without the surrounding code needing to change.
    I have succeded partially by using a ThreadLocal object to hold my context. I can set and get the values to and from the context and actually pass values to my Driver wrapper without explicitly passing them as parameters. This works well in a non-EJB environment. My concern arises when I switch to the EJB environment.
    If my context is set in a session bean, which invokes an entity bean, am I then guaranteed that these will execute in the same physical thread?
    If the session and the entity beans are hosted on seperate machines then the answer would certainly be NO. Is there any way to have the container manage the context and propagate it accross containers when needed?
    Any thoughts or suggestions on this topic are wellcome, even if they don't solve the issue entirely.
    Looking forward to hear from you all!
    /poul

    In an EJB environment, you have absolutely no control over threading issues. (It was purposefully designed that way.) However, you do have your own little "sandbox" in the EJB ClassLoader - which is why there is a lot of use of the Singleton pattern for factories and (very carefully!) as small caching mechanisms. You might want to look into that avenue - but you have to know how your EJB vendor's ClassLoader scheme works (there does appear to be a convergence in this area) and you must be very sensitive to potential thread-blocking operations that may take a while to complete.

  • J2EE without EJB

    hello
    i want to ask how can i use the J2EE container without implementing EJB's. i just want to use servlets, JSP, and classes. is this possible and how can i find info about this. thanx
    Feras
    [email protected]

    Hi Feras,
    The purpose of a J2EE container (such as OC4J) is to execute J2EE applications. A J2EE application is comprised of modules. There are basically two types of modules: "client" and "ejb". A J2EE application can contain any combination of modules -- therefore it may only have a single "client" module (and no "ejb" module -- for example).
    Have you not read the available documentation? For the latest version of OC4J, the documentation is available from:
    http://otn.oracle.com/docs/products/ias/doc_library/903doc_otn/index.htm
    And there is also the J2EE specification and related documentation, that is available from:
    http://java.sun.com/j2ee
    Hope this answers your question.
    Good Luck,
    Avi.

  • Non EJB JTA possible?

    Hi,
    I am building a web service that will need to access 3 databases.
    Therefore, I need to use JTA to manage the transaction.
    I am trying to apply JTA without using EJB, Is that possible?
    My code is like this:
    UserTransaction userTransaction = (UserTransaction)inititalContext.lookup("java:comp/UserTransaction");
    try
    userTransaction.begin();
    someDAOMethod();
    userTransaction.commit();     
    catch(Exception ex)
    Exception was encountered with at the userTransaction.commit() line, and the exception message is:
    Caused by: javax.transaction.xa.XAException: JDBC driver does not support XA, hence cannot be a participant in two-phase commit. To force this participation, set the GlobalTransactionsProtocol attribute to LoggingLastResource (recommended) or EmulateTwoPhaseCommit for the Data Source = myDS
    I have tried to change the transaction setting to EmulateTwoPhaseCommit, the same error happens after the restart.
    When I try to change it to LoggingLastResource, WebLogic cannot start at all.
    How can I do and is there anything I have done wrongly?
    Thanks in advance.

    Hi Joe,
    Yes, I have 3 data sources through JNDI.
    My DBMSes are all oracle, but of different versions, they are 8i, 10g and 11g.
    Driver: oracle.jdbc.OracleDriver
    I have tried to change the 11g's driver to oracle.jdbc.xa.client.OracleXADataSource, but the same error still appear.
    By the way, I am using hibernate, so I have added the following properties into my 3 hibernate.cfg.xml files:
              <property name="transaction.factory_class">org.hibernate.transaction.JTATransactionFactory</property>
              <property name="transaction.manager_lookup_class">org.hibernate.transaction.WeblogicTransactionManagerLookup</property>
              <property name="current_session_context_class">jta</property>
    Appreciate your help.
    Let me know if you need me to provide more information.
    Thanks!

  • JDBC, JMS and EJB transactions - possible problem?

    Hello,
              I am using Oracle 9, Weblogic 8.1 SP 4, MyEclipse and
              XDoclet.
              In my current project I have the following piece of code
              in one of my message driven beans (code cited as pseudocode
              without unnecessary details):
              * @ejb.bean name="MyMessageProcessor"
              * display-name="Display name for a MyMessageProcessor"
              * jndi-name="ejb/MyMessageProcessor"
              * description="Bean MyMessageProcessor"
              * destination-type="javax.jms.Queue"
              * transaction-type="Container"
              * acknowledge-mode="Auto-acknowledge"
              * subscription-durability="Durable"
              * generate="false"
              * @ejb.transaction type="Required"
              public class MyMessageProcessor implements MessageDrivenBean, MessageListener {
              public void onMessage(Message msg) {
                   try {
                        //obtaining connections to two different databases via JNDi
                        java.sql.Connection connOne =
                        ((DataSource)ctx.lookup("DataSourceOne")).getConnection();          
                        java.sql.Connection connTwo =
                             ((DataSource)ctx.lookup("DataSourceTwo")).getConnection();
                        // performing some UPDATEs and INSERTs on connOne and connTwo
                        // calling some other methods of this bean
                        //creating the reply JMS message and sending it to another JMS queue
                        Message msgTwo = this.createReplyMessage(msg)
                        this.queueSender.send(msgTwo);
                        //commiting everything
                        this.queueSession.commit();          
                   } catch (Exception ex) {
                   try {
                        if (this.queueSession!=null) this.queueSession.rollback();
                   } catch (JMSException JMSEx) {};     
                   this.context.setRollbackOnly();
              Some days ago (before the final remarks from my client) there used to be only one DataSource configurated on the basis of the
              connection pool with non-XA jdbc driver. Everything worked fine
              including the transactions (if anything wrong happend not only wasn't the replymessage sent, but also no changes were written
              to database and the incomming message was thrown back to the my bean's
              queue).
              When I deployed the second DataSource I was informed by an error message, that only one non-transactional resource may
              participate in a global transaction. When I changed both datasources
              to depend on underlying datasources with transatcional (XA) jdbc drivers, everything stopped working. Even if
              EJB transaction was theoretically successfully rolledbacked, the changed were written to the database
              and the JMS message wasn't resent to the JMS queue.
              So here are my questions:
                   1. How to configure connection pools to work in such situations? What JDBC drivers should I choose?
                   Are there any global server configurations, which may influence this situation?
                   2. Which jdbc drivers should I choose so that the container was able to rollback the database transactions
                   (of course, if necessary)?
                   3. Are there any JMS Queue settings, which would disable the container to send message back to the
                   queue in case of setRollbackOnly()? How should be the Queue configurated?
              As I am new to the topic and the deadline for the project seems to be too close I would be grateful
              for any help.
              This message was sent to EJB list and JDBC list.
              Sincerely yours,
              Marcin Zakidalski

    Hi,
              I found these information extremely useful and helpful.
              The seperate transaction for sending messages was, of course, unintentional. Thanks a lot.
              Anyway, I still have some problems. I have made some changes to the
              code cited in my previous mail. These changes included changing QueueSessions
              to non-transactional. I also set the "Honorate global transactions" to true.
              I am using XA JDBC driver. After setting "Enable local transactions" to false
              (I did it, because I assume that JDBC transactions should be part on the global
              EJB transaction) I got the following error:
              java.sql.SQLException: SQL operations are not allowed with no global transaction by default for XA drivers. If the XA
              driver supports performing SQL operations with no global transaction, explicitly allow it by setting
              "SupportsLocalTransaction" JDBC connection pool property to true. In this case, also remember to complete the local
              transaction before using the connection again for global transaction, else a XAER_OUTSIDE XAException may result. To
              complete a local transaction, you can either set auto commit to true or call Connection.commit() or Connection.rollback().
              I have also inspected the calls of methods of bean inside of onMessage() method just to check, whether
              the transactions are correctly initialized (using the weblogic.transaction.Transaction class).
              My questions are as follows:
              1. Any suggestions how to solve it? I have gone through the google answers on that problem and only
              thing I managed to realize that JDBC must start its own transaction. Is there any way to prohibit it
              from doing that? Can using setAutocommit(true/false) change the situation for better?
              2. How to encourage the JDBC driver to be a part of EJB transaction?
              3. As I have noticed each of ejb method has its own transactions (transactions have different
              Xid). Each method of the bean has "required" transaction attribute. Shouldn't it work in such
              way that if already started transaction exists it is used by the called method?
              4. The DataSources are obtained in my application via JNDI and in the destination environment I will have slight
              impact on the configuration of WebLogic. What is least problematic and most common WebLogic configuration which would
              enable JDBC driver to participate in the EJB transaction? Is it the WebLogic configuration problem or can it be
              solved programmically?
              Currently my module works quite fine when "enable local transactions" for DataSources is set to true, but this way
              I am loosing the ability to perform all actions in one transaction.
              Any suggestions / hints are more than welcomed. This message was posted to jdbc list and ejb list.
              Marcin

  • File Sender without Sender agreement- Possible?

    Hello
    It may seems bit unusual but i am having requirement in which the file sender adapter is expected to trigger the OS level command in which it gets the file from SSH server in the XI polling directory and then XI File adapter would pick up that file.
    Now it has been observed that, XI File adapter doesn't execute OS level command in its poll cycle unless it creates message which means XI would expect some file (atleast a dummy file) in its polling directory.
    Since this is not possible, we thought of creating the second adapter which will poll the dummy file of say 0 KB and call the OS level command which will get the files from SSH server and then the second adapter would poll the actual file.
    Since second adapter would serve just as the trigger channel, its not expected to have any sender interface associated with it and hence it should poll the file without any sender agreement. can this be possible?
    thanks in advance.
    regards
    rajeev

    Hi,
    Actually i tried that earlier but it didn't help.
    It does executes command before or after but that only when it creates a message and it doesn't create message unless we have suitable sender agreement.
    Actually i tried with dummy message interface (without actual message interface in IR) and that works but it fails in MONI and generates the error message as no suitable receiver found which i wanted to avoid.
    Thanks and Regards
    Rajeev Patkie

  • Setting db isolation level on transaction without EJB

              I'm using UserTransaction in the servlet container, to control XA transactions.
              We're not using EJB. How do I set the database isolation level? I'm tempted
              to use java.sql.Connection.setTransactionIsolation(). However, the Sun Javadoc
              for that method says you can't call that after the transaction has started (which
              makes sense). Right now, we're starting the transaction, getting a connection,
              closing the connection, and committing the transaction. I guess that order won't
              work if I want to set the isolation level. Or am I mixing apples and oranges
              here? If I use UserTransaction, is it even appropriate to try to set the isolation
              level on the connection?
              All I really want to do is change the default isolation level. We do not need
              different isolation levels for different use cases. (Not yet, anyway.) We might
              have transactions against two different database instances or other resource managers.
              That's why I want to use UserTransaction and XA transactions.
              Thanks!
              Steve Molitor
              [email protected]
              

    Only committed transactions are replicated to the subscriber.  But it is possible for the report to see dirty data if running in READ UNCOMMITTED or NOLOCK.  You should run your reports in READ COMMITTED or SNAPSHOT isolation , and your replication
    subscriber should be configured with READ COMMITTED SNAPSHOT ISLOATION eg
    alter database MySubscriber set allow_snapshot_isolation on;
    alter database MySubscriber set read_committed_snapshot on;
    as recommended here
    Enhance General Replication Performance.
    David
    David http://blogs.msdn.com/b/dbrowne/

  • JNDI tree access for code outside servlets and EJBs and JSPs

    Can code outside EJBs, Servlets and JSPs have access to the JNDI tree?
    For example, in a web application, web.xml has a env-entry declaration which I want to access from a POJO which is called by a JSP in the web app. Is this permissible?

    Can code outside EJBs, Servlets and JSPs have access
    to the JNDI tree?
    For example, in a web application, web.xml has a
    env-entry declaration which I want to access from a
    POJO which is called by a JSP in the web app. Is
    this permissible?Yes. Read the JNDI tutorial.

  • WSDL/client-stub generation without EJBs ?

    My WL7 application invokes methods on external subscriber
    web-apps. I need to provide WSDLs for these external apps, since
    they'll be implemented by our customers.
    Currently, I create 'dummy' EJBs, then create .ears out of it,
    run 'servicegen' to create a dummy webservice, then run
    'clientgen' to create the WSDLs and the client stub classes
    that I'll finally use. I'd like to avoid some of the above
    steps. Ideally, I'd just create the appropriate Java interface
    classes, then use some tool to create the WSDL and the
    client-stub classes. Is this possible ?
    -john

    Hi John,
    Have you considered using a WSDL generation GUI, such as
    http://www.omniopera.com/omniopera.html
    Bruce
    BTW, you do realize that when a webservice is deployed on WLS v7, the
    WSDL is available to anyone using
    http://<host>:<port>/<context_url>/<webservice>?WSDL
    john wrote:
    Bruce, I'm not sure how I would use those other tasks to obtain
    what I want. AFAIK, the only way to generate a WSDL for a service
    is to use the 'clientgen' task. And the clientgen task requires
    the actual webservice implementation in the form of a .ear
    file.
    In my case, I need to create WSDLs which I then pass on to
    my customers, for them to implement and host. Currently, to do
    this I have to myself implement the desired dummy webservice
    and then use clientgen to obtain the WSDL (along with the
    stubs etc ..)
    thanx
    -john
    Bruce Stephens <[email protected]> wrote:
    Hi John,
    In addition to the servicegen and clientgen ant tasks there are now
    several other narrowly focused ant tasks such as autotype, and
    source2wsdd. Check out the documentation:
    http://edocs.bea.com/wls/docs70/webserv/assemble.html#1011066
    Hope this helps,
    Bruce
    john wrote:
    My WL7 application invokes methods on external subscriber
    web-apps. I need to provide WSDLs for these external apps, since
    they'll be implemented by our customers.
    Currently, I create 'dummy' EJBs, then create .ears out of it,
    run 'servicegen' to create a dummy webservice, then run
    'clientgen' to create the WSDLs and the client stub classes
    that I'll finally use. I'd like to avoid some of the above
    steps. Ideally, I'd just create the appropriate Java interface
    classes, then use some tool to create the WSDL and the
    client-stub classes. Is this possible ?
    -john

  • BO FConsolidation without account hiarchy possible?

    Hello friends
    I have a verry special question: Is it possible to setup a BOFC system including equity- and debt-consolidation without any account hirarchy?
    Background: My client is using SAP FI. All reporting units have one company code in sap. In SAP is no account hierarchy just the balance sheet and income statement structure. The aim is to have one chart of accounts for all company codes in SAP and the same chart of accounts for consolidation with BO FC.
    It is neccessary to create the accounts in BO FC to build up the hirarchy? What are advantages? What are disadvantages?
    Cheers
    Udo

    Dear Udo,
    it is completely possible to build a chart of accounts in BFC without using the hierarchy rollup functionality. For your information, until the (recent) release of the IFRS starter kit, the previous SAP IFRS/French standard was not using it.
    In my opinion the account rollup functionality is really optional, particularly if you are using BFC for statutory consolidation only. Seting up the functionality is more time consuming, and the benefice for end users is rather limited. Indeed you can use retrieval characteristics in order to obtain similar result in terms of account sub-totals for your financial statements. And the people in charge of consolidation generally prefer to use flat balances when they need to analyse figures in detail. Moreover if you really want to use all the possibilities that offer the hierarchy rollup in the schedules, you need to design specific reports with hierarchy-based initialization.
    The account hierarchy rollup can be interesting for management reporting where users want to easily retrieve key P&L or balance sheet agregated figures, for Excel link files (sub-total accounts can be directly refered to), for Analytics (where the drill functionality is only meaningful with hierachy rollup), when you have lot of intermediary sub-total levels (saving the creation of numerous sub-characteristics) or if you have to manage two charts of accounts (eg.: detailed for year-end closing and agregated on a monthly basis).
    Regards.

Maybe you are looking for