February 14, 2020

How to create cookies from server side?

Yes, you read it correctly, you can create cookies in the browser from the server side, and get your browser script to access them. This is enabled via Web Engine HTTP TXN business service.
Siebel Cookies
Siebel Cookies

var oBS = TheApplication().GetService("Web Engine HTTP TXN");

var Inputs = TheApplication().NewPropertySet();
var Outputs = TheApplication().NewPropertySet();

var psCookie = TheApplication().NewPropertySet();
psCookie.SetType("Cookie");
psCookie.SetValue("Value of Cookie");
psCookie.SetProperty "Path", "/";
Inputs.AddChild(psCookie);

oBS.InvokeMethod("SetResponseCookies", Inputs, Outputs);

Keep in mind that this method can be called from any other event in Siebel except application start(Application_Start) event due to product limitation .

Not just that one can use this service to get IP address of the client which is used to access Siebel. I will highly recommend to go through all the methods of Web Engine HTTP TXN business service in your free time.

How caching work in Siebel?

In any online transaction processing system like CRM most of the processing time is taken in finding the right record in database. No matter what database optimization technique you implement, your db processing time would be the highest among the time spent in web server and application server.
Siebel Database

February 09, 2020

How to update bulk records in Siebel using eScript?

The best suggestion anyone can give to update records in bulk in Siebel is to use Siebel EIM. However sometimes developers don't have time to create EIM job, test it in lower environments and get it working in some days, and business can't wait for that long, And pesky admin team won't give developers the SQL access to production.



Then this is the last solution. Write a dirty little script and run it in business service simulator.

February 06, 2020

How to disable anonymous browsing in Siebel REST API?

This is one of the most funny bug registered by Oracle. (Just after the obscene ROW IDs) .
Although this is applicable only for IP15, but do keep this in mind in case you are doing POCs on any customer.

Oracle left partially built config in the Java container sub system thus all the traffic coming through the system is passthrough. Kudos to the product team to get the feature out of the door :)

To disable this all you need to do is to delete the JavaContainerPropSub in named subsystems. This will cause authentication error in the component thus it won't turn on and you can in turn switch off the anonymous browsing.

Siebel REST API Interview Questions

Question 1 : What are REST APIs? 

Answer: REST stands for Representational state transfer. It is a protocol for data transfer using HTTP methods.


Usually REST API uses JSON format to communicate as it is simpler and lightweight than XML.