A developer writes the following code:
public with sharing class OrderController() public PaqeReference sendOrder() Order_c order = new Order_c insert order; ExternalOrder externalOrder = new ExternalOrder(order); Http h = new Http(); HttpRequest req = new HttpRequest(); req.setEndpoint('https://www.example.org/v1/orders'); req.setMethod('POST'); req.setBody(JSON.serialize(externalOrder)); HttpResponse res = h.send(req); order = (ExternalOrder)JSON.deserialize(res.getBody(),ExternalOrder.class);
While testing the code, the developer receives the following error message: System.CalloutException : You have uncommitted work pending
What should the developer do? (Choose two.)
- Use the asyncSend() method of the HTTP class to send the request in async context
- Ensure all callouts are completed prior to executing DML statements
- Move the web service callout into an @future method
- Use Database.insert (order, true) to immediately commit any database changes
Reveal Solution Next Question