When working with integrations in JD Edwards, you’re going to encounter two types of integration frameworks: the BSSV (Business Services) server and the AIS (Application Interface Services) server. Both perform similar functions, but you may be wondering which one is better to use given your particular needs. Luckily, Surety Systems is here with the answer for you. Read on to learn more about the differences between them, and how to figure out the answer to the question: BSSV or AIS server?

BSSV

Published Business Services opens E1 up to the web so that web applications are able to seamlessly call E1 using SOAP Web Services. A very robust framework, the BSSV server is built on top of a Java platform and allows total integration into E1. Because Business Services gives you the ability to be able to call E1 business functions directly or by using table I/O, you can be very creative in the web service you wish to publish, in addition to the base Published Business Services provided by Oracle. For example, you’re able to execute self-contained stateless business functions like “Get Item List Price” as a web service, or you can create a new custom business service like “Generate Sales Order” to call the base E1 master business functions to validate and create the Sales Order within E1.

Consumer Business Services also opens up the world of Java up to E1. You now have the ability to call any supported Java application or third-party web services over the web utilizing SOAP-based web services or Restful Services/JSON. A good example of this would be copying local files to or from an MFT Server using secure SFTP or calling a third-party software over the web that supports JSON/ XML, thanks to the functionality contained in the available Java Classes.

AIS Server

An AIS server communicates between JDE EnterpriseOne and other AIS server clients. This type of server is perfect for clients or software languages that use JSON over REST. Clients that use an AIS server to interact with EnterpriseOne include:

  • Apps created with the AIS Client Java API
  • Components created using the Oracle Java Extension Toolkit (JET) that can run inside EnterpriseOne UX One pages
  • EnterpriseOne mobile apps created using the Oracle Mobile Application Framework (MAF)
  • EnterpriseOne apps created with the Oracle Application Development Framework (ADF)
  • Expose E1 applications/UBEs/Tables to the web as a REST Service
  • IoT devices

BSSV or AIS Server?

Now comes the important question: does the BSSV or AIS server better solve whatever need you have in JD Edwards? To answer that question, we’ll need to figure out whether you’re exposing E1 to third-party applications/web services or if E1 is consuming third-party applications/web services.

If you’re exposing E1 to third-party applications/web services and you’re in search of something to simply integrate with external applications, BSSV could work for you. (To make things even easier, Oracle has a set of pre-built EnterpriseOne Business Services for you.) However, if you need to integrate with social networks, smart devices, or IoT devices, consider the AIS server. Why? Keep in mind that SOAP (which BSSV needs to work) is a bit sluggish on mobile, social, and “chatty” apps, i.e. apps that require a lot of communication between client machines and central servers. The AIS server, on the other hand, uses a lightweight REST over JSON engine. Because it’s more lightweight, AIS is preferred for consumer touchpoints and IoT devices where you need real-time/nearly real-time integration speeds. (Of course, JD Edwards Orchestrator makes things a lot easier, too.) Note that if performance is an issue, combined with large volumes of data, BSSV might be your preferred route as AIS is an HTML-based system, and thus, its performance might degrade under those circumstances.

When it comes to E1 consuming third-party applications/web services, your “best option” is a little less clear cut. Both BSSV and AIS can support REST web services with JSON, but only BSSV can support SOAP. AIS/Orchestrator certainly can support Java/Groovy custom service requests, which allows it to be more creative in what it can do, while BSSVs (being native Java) can import additional JAR files in addition to the base ones, not to mention the fact that it can call E1 business functions directly. As a tool, AIS/Orchestrator might require less development time, but as is the case with every tool, you’re restricted by its built-in functionality. Because BSSVs are native Java, you can be more creative in how you want to solve your problems, but as with any programming language, the solutions you come up with might take more time to develop.

How Oracle Compares the Two

Here’s what Oracle has to say about them both:

“The JD Edwards EnterpriseOne Business Services server is a robust tool for integrating JD Edwards EnterpriseOne inbound and outbound transactions as web services using the SOAP protocol. For certain integration patterns, the Business Services server remains the method of choice. The IoT Orchestrator—and more specifically the Application Interface Services (AIS) server—provides a new alternative integration method based on the REST service protocol. The nature of IoT device integration makes the REST protocol a better choice for IoT orchestrations. Both BSSV and AIS continue to be important components in the broader JD Edwards EnterpriseOne Integration Platform.”

Examples of BSSV and AIS Interfaces Our Consultants Have Created in the Past

E1 as a Published Service:

  • Creation of published E1 REST Web Services using Orchestrator and Apache Groovy to expose E1 Security applications to Xpandion portal.
    • This involved the creations of Orchestrations/Service Requests/Service Data Requests/Rules and Custom Service Requests utilizing Groovy code, including:
      • Add/Update Default Location And Printer
      • Add/Update User Security
      • Add/Update Up Default Printer
      • Create/Update System User
      • Create/Update User
      • Create/Update User With Security
      • Data Source Revisions
      • Employee Address Book Creation/Update
      • Call LDAP Batch Sync UBE
      • Security Admin Password Revisions
      • Security User Add Role
      • Security User Remove Role
      • User Security Detail Revisions User Status
  • Creation of Business Services (BSSV) interface between SalesForce and JDE using SOAP (JAX-WS).
        • This consisted of a published Business Services (BSSV) which, being based on data being received, generated Sales Orders either real time or by a batch process. This process uses the E1 Master Business Functions (B4200310/B4200311) to generate the Sales Orders.
  • Creation of Business Services (BSSV) interface between local company web portal and JDE using SOAP (JAX-WS) which could perform the following:
    • Retrieval of customer information
    • Retrieval of customer contract information
    • Retrieval of previously scheduled service appointments
    • Creation/Renewal of customer contracts
    • Creation of Case Master records
    • Scheduling/Creation of service order appointments (Work Orders/Sales Orders)
    • Creation of Media Object text
    • Developing a Business Services (BSSV) to Click Software provider web services using JAX-RPC to schedule service order appointments/creation of service order appointments/assign technician to appointment
  •  

E1 as a Consumer: 

  • Creation of Business Services (BSSV) interface between E1 to SAP CONCUR REST Web Services APIs using Apache HttpConnect and JSON/XML.
    • This involved developing a Business Service (BSSV) interface and consuming a third-party REST web service using Http Connect (Apache classes) and JSON classes. This process submitted a report on the SAP CONCUR server. Once this report finished processing, the approved employee could then expense the BSSV, which would pull a flat delimited file from the SAP CONCUR server and update the “Z” F0411Z1/F0911Z1 tables in E1. The process involved calling SAP CONCUR APIs, which were published using REST web services.
  • Creation of Business Services (BSSV) interface between E1 to Click Cloud/Mobile Web Services APIs using SOAP (JAX-RPC) a Java API for XML based Web Services.
    • This involved developing a Business Services (BSSV) to Click Software provider web services using JAX-RPC to schedule service order appointments/creation of service order appointments/assign technicians to an appointment.
  • Creation of Business Services (BSSV) interface between E1 to One Source Tax Software Web Services APIs using SOAP (JAX-WS) a Java API for XML based Web Services. 
    • This involved developing a Business Services (BSSV) and consuming a third-party web service using JAX-WS. Data stored in local flat files in a staging folder was read and then the web service was invoked, passing this data to the third-party web service. This process dealt with very high data volume, (100,000+ records).
  • Creation of Business Services (BSSV) interface between E1 to iCMS Employee Onboarding software Web Services APIs using Apache HttpConnect and JSON.
    • This involved developing a Business Services (BSSV) and consuming a third-party REST web service using Http Connect (Apache classes) and JSON classes to retrieve employee onboarding information and updating the Employee Master in E1. A similar interface was written to update the iCIMS Hiring Manager’s details with data from E1.
  • Creation of Business Services (BSSV) interface between E1 to AccuWeather Degree Day Web Services APIs using Apache HttpConnect and JSON.
    • This involved developing a Business Service (BSSV) interface and consuming a third-party REST web service using Http Connect (Apache classes) and JSON Classes. This process could return weather information for a given Zip Code, which was then used to calculate the Degree Days.
  • E1 to MFT Server using SFTP protocol
    • This involved developing a Business Service (BSSV) interface between IBM’s Iseries IFS and an MFT Server using SFTP protocol. This Business Service (BSSV) utilized the com.jcraft.JSCH/Apache methods to push files, based on a wildcard from the IFS, and placed the files in a designated folder on the MFT Server. The BSSV would then archive the files it had uploaded to the MFT server.
    • A similar interface was written to pull files from the MFT server based on a wildcard and place files in the local IFS.

Remember—integrations are crucial for efficient business operations. Ensuring you set up your systems correctly is key to making web applications, IoT-connected devices, and mobile JD Edwards apps work as well as they can. If you’re still having trouble deciding between a BSSV server or an AIS server for your JD Edwards needs, Surety Systems has got your back.

We have a wide network of senior-level integration consultants that will be able to assist you in figuring out which integration framework will best solve your problem, as well as setting it up for you. They’ll even ensure knowledge transfer for your team so that you’ll know how to use everything long after they’re gone, whether you go with the BSSV or AIS server.