Transaction demarcation in query templates and BLE?

We have a business process which needs to insert N-many records into a table as a single transaction - if one insert fails, they all rollback.  The number of records and record values are, of course, variable.  How does xMII 11.5 support this or does it? 
I could think of some very ugly hacks using a fixed query and creative use of query template parameters, but I'd rather not go there.
Thanks,
-tim

XMII has no database transactional support.
The last site I worked at rolled their own action block to handle this and support distributed transactions.  Basically, any number of data connections and SQL statements could be passed to the action block and then commiited in one pass.  It was quite a bit of work but it was a major requirement of the client.

Similar Messages

  • Executing BLS Transaction through Xacute query template?

    Hi Experts,
    Am having a SQL query template for which am passing value from web page after user input and i have added this SQL in my BLS transaction in illumSQL action block. I have created Xacute query template and display template(iGrid) for displaying output from transaction.
    Problem am facing is that am not able to execute my transaction after passing values to SQL query. How to get this working?
    Regards,
    Ravi Shankar

    Hi som sarkar,
    Let me explain my problem this way, let say am having SQL Fixed query and am doing some field selection based on the parameter which is been passed to the query template.
    -Checked the query template returning values, working good.
    created one Display template to display whatever been fetched by query template(iGrid).
    -Generated applet working good.
    Now if i pass the parameters from webpage to SQL query(parametes are mapped in query template) and update the grid, it should work right but its not...
    Thats what i was trying to ask you so far.
    Regards,
    Ravi Shankar

  • Transaction ME80FN, SAP Query ME80FN, and logical database MEPOLDB

    I am looking at transaction ME80FN. Is that from the global query /SAPQUERY/ME, ME80FN? I was told that ME80FN was from SAP Query... but doubts are creeping in.
       SE93 shows trans. ME80FN as Program RM06EAAW and no logical database. RM06EAAW has different headings and an additional toolbar in the results screen.
      Did RM06EAAW get generated from SQ01 ME80FN?
       I have to modify the ME80FN transaction output by adding a field to the PO History display, which is selected from the bottom toolbar, rightmost button. I guess I have to go with RM06EAAW as the starting point(?).
       We are on 4.6B Any suggestions are welcome.
      Thanks

    These are what I am dealing with:
      Transaction ME80FN
      /SAPQUERY/ME, ME80FN query.
      Another way to word the question is: How can I make a copy of the global query /SAPQUERY/ME, ME80FN to have that nifty bottom toolbar that transaction ME80FN has?
      At first glance, they are the same entity... But the toolbar in the transaction and display options via the last button on the toolbar differentiate the two.
       Thanks....

  • Maintaining multiple query templates

    Hi,
    We created a generic query templates for SQL Query and this query template does not have any query specified inside the Query Template. The SQL query is assigned inside the xMII transaction. Instead of creating and maintaing multiple query templates for various SQL queries, we created this single query template and we use this query template by assigning the SQL query in xMII Transaction at runtime. Will there be any issues around this approach?
    Thanks,
    Sara

    This approach limits the reusability/maintainability of your queries.  If any query is to be used more than once (e.g. in a UI application or more than one BLS transaction), it makes sense to put it in its own query template.  Also, if you want to take advantage of xMII's caching infrastructure, you should also do this.
    There's also a small possibility in the future (I'm no longer with SAP, but just suggesting it is a possible outcome) that the SQL will not be dynamically assignable to avoid SQL code injection security issue(s).

  • Calling a Stored Procedure with output parameters from Query Templates

    This is same problem which Shalaka Khandekar logged earlier. This new thread gives the complete description about our problem. Please go through this problem and suggest us a feasible solution.
    We encountered a problem while calling a stored procedure from MII Query Template as follows-
    1. Stored Procedure is defined in a package. Procedure takes the below inputs and outputs.
    a) Input1 - CLOB
    b) Input2 - CLOB
    c) Input3 - CLOB
    d) Output1 - CLOB
    e) Output2 - CLOB
    f) Output3 - Varchar2
    2. There are two ways to get the output back.
    a) Using a Stored Procedure by declaring necessary OUT parameters.
    b) Using a Function which returns a single value.
    3. Consider we are using method 2-a. To call a Stored Procedure with OUT parameters from the Query Template we need to declare variables of
    corresponding types and pass them to the Stored Procedure along with the necessary input parameters.
    4. This method is not a solution to get output because we cannot declare variables of some type(CLOB, Varchar2) in Query Template.
    5. Even though we are successful (step 4) in declaring the OUT variables in Query Template and passed it successfully to the procedure, but our procedure contains outputs which are of type CLOB. It means we are going to get data which is more than VARCHAR2 length which query template cannot return(Limit is 32767
    characters)
    6. So the method 2-a is ruled out.
    7. Now consider method 2-b. Function returns only one value, but we have 3 different OUT values. Assume that we have appended them using a separator. This value is going to be more than 32767 characters which is again a problem with the query template(refer to point 5). So option 2-b is also ruled out.
    Apart from above mentioned methods there is a work around. It is to create a temporary table in the database with above 3 OUT parameters along with a session specific column. We insert the output which we got from the procedure to the temporary table and use it further. As soon the usage of the data is completed we delete the current session specific data. So indirectly we call the table as a Session Table. This solution increases unnecessary load on the database.
    Thanks in Advance.
    Rajesh

    Rajesh,
    please check if this following proposal could serve you.
    Define the Query with mode FixedQueryWithOutput. In the package define a ref cursor as IN OUT parameter. To get your 3 values back, open the cursor in your procedure like "Select val1, val2, val3 from dual". Then the values should get into your query.
    Here is an example how this could be defined.
    Package:
    type return_cur IS ref CURSOR;
    Procedure:
    PROCEDURE myProc(myReturnCur IN OUT return_cur) ...
    OPEN myReturnCur FOR SELECT val1, val2, val3  FROM dual;
    Query:
    DECLARE
      MYRETURNCUR myPackage.return_cur;
    BEGIN
      myPackage.myProc(
        MYRETURNCUR => ?
    END;
    Good luck.
    Michael

  • Query Template restricted to 32 Params

    Hi All,
    I have more than 50 Params on Screen to be inserted into database through MII
    Solution 1: I can send this as one param by selecting all the variables in one variable (through dynamic SQL Query)
    but this is not good practice as it is is not secured due to SQL injection
    Solution2 : I can have two tables and distribute the variables from the screen in these two tables (as Query templates restrict me to have 32 Params)
    Can anyone suggest me a better solution keeping in mind security and Best Practices
    Thanks in advance
    Regards
    Namita

    Hi Namitha,
    1) If you are using MSSQL server then you can still go for Dynamic SQL but instead of using your Dynamic SQL statement directly in Query Template Write a Stored procedure and inside procedure write the Dynamic SQL statement passing this as string parameter. And call this stored procedure from Query template.
    Since Stored Procedure is stored at server and hence not visible or in-accessible to anyone or end user
    So chances of SQL injection is minimal or no chance.
    2) But If you are using Oracle then you can do something like this:-
    Assuming that you are not sure of how many rows you need to insert. It comes on fly from front-end.
    Say for example, you need to insert two rows, each row having 50 or more fields(columns).
    In JavaScript write a small routine in which you append each field separated by comma( , ) or any character you feel convenient and then prepare the second row in same way and then append it with first row separated by semicolon( ; ) or any character you feel convenient.
    follow same approach for any number of rows using loops.
    So you will get just one Parameter string carrying all the rows and fields.
    Pass this to a stored procedure thru query template.
    and perform this logic
    char_position := instr(STR,',');
    field_value :=to_number(substr(STR,1,char_position-1));
    STR := substr(STR,char_position+length(','));
    Use the above code for un-stringing or to get the rows appended.
    then use the above same code within each row and loop untill you finish un-stringing all the rows.
    where STR is your appended string passed from front-end.
    Hope this helps!!
    Regards,
    Adarsh S P

  • XMII OLAP Query Template SAP Variables Count Limit

    While working with the MII OLAP Query template and connecting to a a BW Adhoc query with many input variables.  I have noticed the SAP Variables list available in the MII OLAP Query template seems to be limited.  Is this really true, can it be configured to display more variables, is there something else that would cause variales not to be displayed in the query template list? 
    I have tried to type in SAP variables not displayed in the list but actually in the BW Query but this just resulted in an error.
    Any insight would be really helpful.  Thanks

    Gary,
    One again drawing some analogies here , this time with the JCO. Suppose you are interfacing to a ZBAPI and at some point you make some changes to the Z function in R/3. These changes are not automatically reflected in MII unless you refresh/clear the JCO Proxy. Could a similar scenario be attributing to your issue?
    What I would suggest is to disable / save / enable / save your OLAP data server and see if that makes any differnce.
    I may be totally off track here but just a thought.
    Goodluck
    Regards
    Udayan

  • Sending Query to query template

    Hi,
    is it possible to send query from Html page to query template. for example, i create query template as IDBC server and in fixed query mode without giving any query. just blank. in page generator i mapped with iCommand. Now i want to send query from javascript by using getQueryObject. how to send it?
    -senthil

    Senthil,
    As John indicated, using the built-in query parameter [Param.x] allows you to be very dynamic in your approach, but document.APPLET.getQueryObject().setQuery('SELECT....'); would be the same thing if you just wanted to pass in the whole fixed query statement.
    I may be getting ahead of things, but I can't help but think you are heading down a bad development path by burying all of your queries in the client side script.  You can use iCommand applets as recordset objects, but they will always be client sided, not server sided like ado recordsets in asp.  I've seen far too many system integrator botched applications where the the body onload was used to trigger javascript that attempts to force queries into applets when they have not been initialized by the JRE.  By nature Query Templates themselves can be filled with [Param.x]'s but trying to develop large amounts of application content where the select statements are assembled in client side javascript can lead to all sorts of supportability issues for the customer.  Imagine a customer going to training, and understanding the basics of query templates, and then trying to reverse engineer your page with one query template called "SQLGeneric" and all of the logic buried in javascript.  He/she opens the template and all they find is a FixedQuery with [Param.1] - can you envision their confusion?  Then they look at the 1000 - 2000 lines of javascript that I've seen at times?
    Can you provide the business case as to why you would not create a simpler query template minded approach, or would want to construct the queries this way?
    Regards,
    Jeremy

  • Display and Query template

    Hi,
    I have few display templates and query templates. How can I know which query template is used for the display template?
    Regards,
    Ajay.

    Hi Ajay,
        For this the better solution is to follow the naming convention
    Name  query template as <b>ApplicationNameQuery</b> and Display templates as <b>ApplicationNameDisplay</b>.
    This gives you intial idea...
    For best practices better check this link....
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/30f43a39-be98-2910-9d9c-a59785f44e41
    hope this helps you...
    Regards,
    Kishore

  • Passing query template name to BLS SQL action in the link editor

    I want to have one transaction that uses the SQL query action, but which query template it uses will be dependent on some user input. I am having trouble passing the query name. I'm using the full file path in xml format (i.e. "c://<folder1>//<folder2>//<folderN>//"&PassedFileName&".xml", but with backslashes instead of forward slashes). I got an error around the connector, so I set that too. Then I got an error around mode, so I set it to "FixedQuery". Now I'm getting, "The Query expression was not set with the Query parameter".
    There are only 3-5 possible queries that will be used, so I'd rather build SQL queries and just pass the transaction the name of the query, as opposed to passing the full text of the query each time.
    Thanks,
    Carrie
    Edited by: Carrie Schimizzi on May 9, 2008 6:38 PM
    Edited by: Carrie Schimizzi on May 9, 2008 6:39 PM
    Edited by: Carrie Schimizzi on May 9, 2008 6:40 PM

    Carrie,
    If you haven't already done so, configure your master BLS transaction with a proper representative runtime variation, which will make the whole process simpler to create and troubleshoot.  Quite often when people try to use the dynamic capabilities of MII, they end up getting confused because of user over-complication.  In your SQLQuery action block make sure you configure it to a valid template that would be one that the user would provide as an input (don't forget to allow the generation of sample results for making any subsequent trx efforts easier).  Then look in the link editor and you should see this string value for the query template link if you hover over the corresponding blue T icon.  This will show you the format you need to provide from your Transaction input property (which should also have a valid default value assigned so you can test the transaction by itself, without needing to initially rely on the Xacute Query template layer.
    Regards,
    Jeremy

  • Query Template Caching Properties

    I need to change the IsCachable on the fly in an IRPT page. It seems every property is exposed in the query object EXCEPT IsCachable. Am I missing something?
    Assuming I'm not, how can I simply tell the query template to NOT check the cache for this update AND not create a new cache. I know I can change the Rowcount, or anything really, so it won't match up with an existing cache. But IsCachable is true, and this will cause a new cache to be created, which I don't want.

    The problem is I need to change the IsCachable property in a web page in response to user input (back and forth at will), and then re-update the applet(s) on the page. So I really need to drive this from javascript, changing IsCachable to whatever the user has selected and then doing the applet update. QueryObject.IsCachable returns an error, no method or property exists. It's also not listed in the Script Assistant.
    The idea is I have a scheduled transaction that runs every few minutes and pre-caches BLS transactions that feed reports that are performance problems (Rajeev you should be able to relate to that one). When these reports are run, they now render in a few seconds. I display how old the data is, and have a checkbox they can tick to run the report again withouit using the cache if they have a problem with data that is 10 minutes, or whatever, old. They make the decision to wait for the absolute latest data. Doing this in Javascript is by far the easiest way to handle this. I just don't seem to have access to that IsCachable property.
    Rick - It's interesting that you consider it easier to do your own caching. We started down this road and decided it was all getting too messy. It took a while to get total control over xMII caching, but now I find using it much cleaner.

  • How to Save SQL query template as a text file

    Hi,
    How to save a SQL query template in my server as a Text file?? I tried using Text saver but it is not getting saved in the path specified.
    Sweety

    Hi Sweety,
    In the transaction editor (for business logic), add your query template to a transaction.  Add a Tracer after and link the Query property of the SQL Query action block to the Message property of the transaction.  Run the transaction and you will see your Action Block's sql script as the message from the Tracer.  You can do the same with the Server property, SD and ED, etc.
    Also if you wish to dynamically load the sql script into the query, you can do that at run time by linking a script source to the query property.  Useful to have if you have to use a complex expression to dynamically create your script.  This sometimes occurs when you have multiple filtering inputs from a webpage and you can reduce the number of tables in a complex join when the fields are left empty.  Normally this would be done as a way to improve the performance of the query.
    Hopefully this is clear.  If not I can probably provide some sample expressions.
    Regards,
    Mike

  • Does each query template call within a repeater re-create the connection?

    Version:  11.5.1.b57
    Hi,
    How exactly does query template calls from a BLS work?  Does each call re-create the connection to the database, or does the connection stay open for awhile?
    Specifically, in my situation we are making query template calls to a database within a repeater loop to insert rows and I'm curious whether it is recreating the connection each time.  We can't insert all the rows at once because of JDBC limitations, so have to insert row by row.  We are reading the data from an xml file and then inserting the data into the database and the performance seems slower than I would have expected (even inserting row by row).  Currently it is taking around ~4m to insert ~2600 records into the database.
    I thought one of two things would be causing the slow speed.
    1.  XMII is recreating the DataBase connection for each query template call
    2.  The repeat reading from the XML document is time-consuming as 11.5 BLS XML manipulation is slow.
    Thanks for the help.
    Kerby

    Hi Kerby,
    It will  recreate connection eachtime.
    You need to use the repeater action block to insert all the rows.If you wont use repeater,it will insert only one row.
    2600 records inserting into database means you will get performance issue because eachtime it will recreate the connection.
    To avoid the performance issue you need to do the following things:
    1) you schedule the transaction in backend.It will insert the records in the database table.
    2) If you want to populate the data in front end , write a query using that table and make a grid.
    It wont create any performance issue.Always big transactions we need to schedule in backend to avoid the performance issue.
    Hope this will help you.
    Thanks,
    Manisha

  • How to set the table input in Query template?

    Hi all.
    I need to call a Bapi_objcl_change, with import parameter and a table as an input. I have done this, in BLS. I have set the table input in the
    form of xml. In BLS, I get the output(the value gets change in SAP R3, what i have given in BLS).  But if i set the same xml structure  in
    query template, I didn't get the output. Table input parameter does not take that xml source.  How to set the table input in Query template?
    can anyone help me?
    Regards,
    Hemalatha

    Hema,
    You probably need to XML encode the data so that it will pass properly and then xmldecode() it to set the BAPI input value.
    Sam

  • MDB container managed transaction demarcation not working in wls 6.1 beta

    I have an MDB which sends the messages it receives onto another JMS
              destination within the onMessage method. These messages are not sent to
              the JMS destination unless I explicitly use a transacted session for the
              destination and subsequently commit the session. If I set the transacted
              parameter to Session as false the messages are sent. If I set the
              transacted parameter to true the messages will only be output if the
              session is committed. This is the standard behaviour for a JMS session
              but this is not the correct behaviour for an MDB running with
              container-managed transaction demarcation.
              For a start the transacted parameter to session should be ignored when
              run in the context of a container transaction and the commit method
              should thrown an exception as it is not allowed within the context of a
              container transaction.
              This is the MDB code and the deployment descriptor: -
              public class MessageBean implements MessageDrivenBean, MessageListener
              private String topicName = null;
              private TopicConnectionFactory topicConnectionFactory = null;
              private TopicConnection topicConnection = null;
              private TopicSession topicSession = null;
              private Topic topic = null;
              private TopicPublisher topicPublisher = null;
              private TextMessage textMessage=null;
              private transient MessageDrivenContext messageDrivenContext = null;
              private Context jndiContext;
              public final static String
              JMS_FACTORY="weblogic.examples.jms.TopicConnectionFactory";
              public final static String
              TOPIC="weblogic.examples.jms.exampleTopic";
              public MessageBean()
              public void setMessageDrivenContext(MessageDrivenContext
              messageDrivenContext)
              this.messageDrivenContext = messageDrivenContext;
              public void ejbCreate()
              public void onMessage(Message inMessage)
              try
              jndiContext = new InitialContext();
              topicConnectionFactory =
              (TopicConnectionFactory)jndiContext.lookup(JMS_FACTORY);
              topic = (Topic) jndiContext.lookup(TOPIC);
              topicConnection =
              topicConnectionFactory.createTopicConnection();
              topicConnection.start();
              // The transacted parameter should be ignored in the context of a
              container tx
              topicSession = topicConnection.createTopicSession(true,
              Session.AUTO_ACKNOWLEDGE);
              topicPublisher = topicSession.createPublisher(topic);
              textMessage = (TextMessage)inMessage;
              topicPublisher.publish(inMessage);
              // this is illegal in a container transaction
              topicSession.commit();
              topicConnection.close();
              catch (JMSException je)
              throw new EJBException(je);
              catch (NamingException ne)
              throw new EJBException(ne);
              public void ejbRemove()
              <?xml version="1.0" encoding="UTF-8"?>
              <!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise
              JavaBeans 2.0//EN' 'http://java.sun.com/dtd/ejb-jar_2_0.dtd'>
              <ejb-jar>
              <enterprise-beans>
              <message-driven>
              <display-name>MessageBean</display-name>
              <ejb-name>MessageBean</ejb-name>
              <ejb-class>MessageBean</ejb-class>
              <transaction-type>Container</transaction-type>
              <message-driven-destination>
              <destination-type>javax.jms.Queue</destination-type>
              </message-driven-destination>
              <security-identity>
              <description></description>
              <run-as>
              <description></description>
              <role-name></role-name>
              </run-as>
              </security-identity>
              </message-driven>
              </enterprise-beans>
              <assembly-descriptor>
              <container-transaction>
              <method>
              <ejb-name>MessageBean</ejb-name>
              <method-name>*</method-name>
              </method>
              <trans-attribute>Required</trans-attribute>
              </container-transaction>
              </assembly-descriptor>
              </ejb-jar>
              

    Please see the response in the EJB newsgroup.
              Also, could you kindly only post to a single newsgroup?
              Thanks.
              "Jimmy Johns" <[email protected]> wrote in message
              news:[email protected]...
              > I have an MDB which sends the messages it receives onto another JMS
              > destination within the onMessage method. These messages are not sent to
              > the JMS destination unless I explicitly use a transacted session for the
              >
              > destination and subsequently commit the session. If I set the transacted
              >
              > parameter to Session as false the messages are sent. If I set the
              > transacted parameter to true the messages will only be output if the
              > session is committed. This is the standard behaviour for a JMS session
              > but this is not the correct behaviour for an MDB running with
              > container-managed transaction demarcation.
              >
              > For a start the transacted parameter to session should be ignored when
              > run in the context of a container transaction and the commit method
              > should thrown an exception as it is not allowed within the context of a
              > container transaction.
              >
              > This is the MDB code and the deployment descriptor: -
              >
              > public class MessageBean implements MessageDrivenBean, MessageListener
              > {
              > private String topicName = null;
              > private TopicConnectionFactory topicConnectionFactory = null;
              > private TopicConnection topicConnection = null;
              > private TopicSession topicSession = null;
              > private Topic topic = null;
              > private TopicPublisher topicPublisher = null;
              > private TextMessage textMessage=null;
              > private transient MessageDrivenContext messageDrivenContext = null;
              >
              > private Context jndiContext;
              >
              > public final static String
              > JMS_FACTORY="weblogic.examples.jms.TopicConnectionFactory";
              > public final static String
              > TOPIC="weblogic.examples.jms.exampleTopic";
              >
              > public MessageBean()
              > {
              > }
              >
              > public void setMessageDrivenContext(MessageDrivenContext
              > messageDrivenContext)
              > {
              > this.messageDrivenContext = messageDrivenContext;
              > }
              >
              > public void ejbCreate()
              > {
              > }
              >
              > public void onMessage(Message inMessage)
              > {
              > try
              > {
              > jndiContext = new InitialContext();
              > topicConnectionFactory =
              > (TopicConnectionFactory)jndiContext.lookup(JMS_FACTORY);
              > topic = (Topic) jndiContext.lookup(TOPIC);
              > topicConnection =
              > topicConnectionFactory.createTopicConnection();
              > topicConnection.start();
              > // The transacted parameter should be ignored in the context of a
              > container tx
              > topicSession = topicConnection.createTopicSession(true,
              > Session.AUTO_ACKNOWLEDGE);
              > topicPublisher = topicSession.createPublisher(topic);
              > textMessage = (TextMessage)inMessage;
              > topicPublisher.publish(inMessage);
              > // this is illegal in a container transaction
              > topicSession.commit();
              > topicConnection.close();
              > }
              > catch (JMSException je)
              > {
              > throw new EJBException(je);
              > }
              > catch (NamingException ne)
              > {
              > throw new EJBException(ne);
              > }
              > }
              >
              > public void ejbRemove()
              > {
              > }
              > }
              >
              >
              >
              >
              > <?xml version="1.0" encoding="UTF-8"?>
              >
              > <!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise
              > JavaBeans 2.0//EN' 'http://java.sun.com/dtd/ejb-jar_2_0.dtd'>
              >
              > <ejb-jar>
              > <enterprise-beans>
              > <message-driven>
              > <display-name>MessageBean</display-name>
              > <ejb-name>MessageBean</ejb-name>
              > <ejb-class>MessageBean</ejb-class>
              > <transaction-type>Container</transaction-type>
              > <message-driven-destination>
              > <destination-type>javax.jms.Queue</destination-type>
              > </message-driven-destination>
              > <security-identity>
              > <description></description>
              > <run-as>
              > <description></description>
              > <role-name></role-name>
              > </run-as>
              > </security-identity>
              > </message-driven>
              > </enterprise-beans>
              > <assembly-descriptor>
              > <container-transaction>
              > <method>
              > <ejb-name>MessageBean</ejb-name>
              > <method-name>*</method-name>
              > </method>
              > <trans-attribute>Required</trans-attribute>
              > </container-transaction>
              > </assembly-descriptor>
              > </ejb-jar>
              >
              >
              >
              >
              >
              >
              >
              >
              

Maybe you are looking for

  • Date converting to less one day while transferring from client to server

    Hi, I have very typical problem. My application is in java, we are using oralce 9ias. The problem when the server is running in german locale and client is running in english. We the date value is passed from client to server it is converting to one

  • Query 2 tables

    I have created 2 select querys which search a postcode table and then with those results it searchs the solicitors table. I want it to be able to search the solicitors table and also to select all the fees from the fees tbale for each solicitor. So i

  • Master Detail - Detail parent child relationship

    Hello All, I have a setup where I have 3 tables. Call them A, B, and C. Table A is the parent table to the child table B. Also table B is the parent table to the Child table C. Is there a way to represent this in Apex? So far I have created two Maste

  • Toolbar boomarks missing, I can't load restore them

    I had to restart my computer due to some issues. When I loaded Firefox up it looked off. My toolbar bookmarks were missing from their spot. They are supposed to be there, the option is checked. Under bookmarks the toolbar folder it's empty, all other

  • Mail using java

    Hello Every one i just want send a simple mail using java or jsp.. so can any one help me ?