Q: I am signed up for the MuleSoft.U Development Fundamentals (Mule 4). What exactly is covered in this course?
A: See course details for MuleSoft.U Development Fundamentals (Mule 4).
Q: Where do I download the course materials from?
A: To access Training Materials:
- Login to https://training.mulesoft.com/course/mulesoftu-fundamentals4 (use your email address that you used to register for the class)
- Once logged in, click on My Training Account link/tab at the top-right corner. This should take you to the learning dashboard.
- On the learning dashboard, you should see a bunch of cards one for each class that you registered for. (Note: There are two tabs here: Current, and Completed. Please look in each of these tabs to find the card that represents your class)
- Click on the card that represents the class you want to download the materials for.
- Downloadable course materials should be on the right.
Q: I do not see or download video lessons for this class. What’s wrong?
A: Unlike Mule 3 courses, Mule 4 based courses do not include video lessons. You will get PDF version of Student Manual and Slides for the class you signed up for.
Q: What can I do to get my system ready for the class?
A: All setup guides for all classes are located here: https://training.mulesoft.com/downloads. Please follow the appropriate setup guide for the class that you signed up for.
Q: What are the software/hardware requirements for this class?
A: Good question. Here’s a cliff-notes version of what’s needed. (for further details, look in our product docs)
- OS: Windows 7, 10; Mac OS X, Linux
- Software: Java (AdoptOpenJDK 8), AnypointStudio 7.x with Mule 4.x
- RAM: 4GB available. Please be sure to understand this. This does not mean total RAM required is 4GB. You need to set aside 4GB RAM just for Mule-related processes besides what’s needed to run your OS and other applications on your machine. It is recommended that a developer’s machine should have 16GB of total RAM to do Mule-related tasks effectively.
- CPU: dual-core will work OK. Quad-core CPU is preferred.
- Diskspace: This should not be a problem on most machines. AnypointStudio, after extraction, takes about 2GB disk space. All associated Maven dependencies might need close to 800MB disk space.
Q: What else do I need on my machine to get started with the class?
A: You also need the following:
- Install Chrome browser (For most cloud-based tasks, you will need Chrome. IE, Safari etc,. do not render the UI correctly). A lot of the tasks have also been tested successfully with new MS Edge browser that is based on Chromium Engine (https://www.microsoft.com/en-us/edge)
- Create a new Anypoint Platform account using this link
- Create a Salesforce Developer Account using this link
- Install Advanced REST Client (ARC) (from here) and/or Postman (from here)
Q: What JDK should I use?
A: AnypointStudio is supported on AdoptOpenJDK. You can download version 8 from AdoptOpenJDK.
Q: I already have Java on my machine that I use for other development. Do I still need to install Java8?
A: If you already have Java8 on your machine, you do not need to install it again. But if you have a different version of Java, other than JDK 1.8.x, then you should download JDK 1.8 (Java 8), install it, and configure it. The reason for that is AnypointStudio requires JDK 1.8 version.
Q: I installed JDK 1.8 as per requirements, what do I do next?
A: You need to configure JAVA_HOME and PATH environment variables. This usually points to the directory where AdoptOpenJDK 8 is installed. Here’s a write-up on how you should set JAVA_HOME (Another set of instructions for Windows and for Mac/Linux). Note that these instructions are for use wih Oracle JDK. You will have to customize them for where AdoptOpenJDK is installed on your machine. You can also google for “how to set JAVA_HOME” for your platform to find many suggestions.
Q: I have completed configuring JAVA_HOME properly. What do I do next?
A: Besides JAVA_HOME, you also need to set PATH environment variable. Here are some instructions on how to do that. (Note: You will have to customize them for where AdoptOpenJDK is installed on your machine)
Q: On my machine, JAVA_HOME environment variable already points to a different JDK version’s installation location. I do not want to change that because I need that for other development besides Mule. How can I set AnypointStudio to use JDK 8 without changing JAVA_HOME?
A: After downloading and extracting AnypointStudio (see steps below on how to do that), you can edit AnypointStudio.ini file to set AnypointStudio’s default VM instead of modifying existing JAVA_HOME. This .ini file is located in the directory where you extracted AnypointStudio. Here are the steps:
Q: I already set JAVA_HOME environment variable to point to my JDK 1.8 install directory. Do I still need to edit AnypointStudio.ini file?
A: No, you do not need to do that.
Q: I heard that Studio now includes necessary JDK, so do I still need to do all the steps mentioned above?
A: Yes, you are right. The new version of AnypointStudio (as of today, it is 7.5.0) comes bundled with AdoptOpenJDK 8. This is good enough to start Studio, but there is a misconfiguration that will prevent the Tooling Service from running correctly. Until it is fixed, you still need to do all the setup and configuration of installing a standalone version of AdoptOpenJDK 8.
Q: Is that it, or is there anything else I should worry about before starting the class?
A: Yes, make sure the Tooling Service is also running. See details about Tooling Service below. Once your Tooling Service is up and running, you are all set for the class.
Q: How do I verify that the Tooling Service is running on my machine?
A: Tooling Service runs as a separate Java process on your machine. You can either use Task Manager (on Windows) or Activity Monitor (on Mac) to verify if that Java process is running.
You can also verify its status from within AnypointStudio. Open Studio’s Preferences dialog box (On Windows: Window > Preferences from top menu; On Mac: AnypointStudio > Preferences from top menu). Access Anypoint Studio > Tooling to see the details as follows:
Click Check Status button to see its status. If it’s not running, click Restart Instance button.
Q: I clicked the Restart Instance button to start the Tooling Service. It starts, but after some time the status indicates that it is no longer running. I have tried clicking that button multiple times with the same results. What can I do to fix it?
A: It’s failing either due to one of the two reasons: Tooling Service is taking too long to start or your environment is not set correctly. If it’s the first, try changing the Default Startup Timeout (in the above screenshot) from 90 to 120 seconds. Then retry clicking Restart Instance button to start the Tooling Service. If it still does not fix the issue, then you might want to go back and verify JAVA_HOME and PATH environment settings as described in the earlier part of this document.
Q: Where do I download AnypointStudio from?
A: You can download the latest version of AnypointStudio from here. After downloading, use an external unzip utility such as 7-zip to extract AnypointStudio. (Note to Windows OS users: The default unzip utility that comes with Windows OS seem to encounter problems with long path names when extracting AnypointStudio)
Q: How do I check my current version of AnypointStudio?
A: Open AnypointStudio, and use Studio’s menu Help > About Anypoint Studio > Installation Details, and verify the software versions for AnypointStudio and Mule Server Runtime are the latest. You can use the Update button to update the software to its latest available version(s).
Q: I am unable to see input/output metadata when I select any processor in Studio. Why is that?
A: The DataSense feature of AnypointStudio is responsible for displaying metadata for each of the event processors in your Mule flow. It relies on a process called Tooling Service to gather metadata details. If the Tooling Service is not running, then you will not be able to see any metadata. Here’s a link to more details on DataSense.
Telnet Commands & Port Requirements
Q: I will attend this class from my office. Do I need to worry about access to any external services or ports via our corporate firewall?
A: Yes and No. If you have an option to attend this class from your home using your home network, would be the best option. But if you cannot, then you need to verify access to the following services or IP addresses at the mentioned ports. You can use telnet client to test this out. Firewalls or Proxy servers can block access to these services and ports. You may ask your IT team to give you access to these services, but most probably the answer would be a “no”. In such a case, you will have an option to run a set of training services locally on your own machine using a jar file provided to you. This will provide access to some (not all) services locally, so you can do most of your exercises.
In any case, here’s a list of telnet commands you should test against the following services and ports:
- telnet mu.mulesoft-training.com 80
- telnet mudb.mulesoft-training.com 3306
- telnet 126.96.36.199 3306
- telnet jms.mulesoft-training.com 61616
- telnet 188.8.131.52 61616
Q: When I do telnet mudb.mulesoft-training.com 3306 I am getting a message "telnet is not recognized...". What does that mean?
A: It usually means the telnet client is not installed on your machine. To fix it, follow the steps indicated for your OS.
- On Windows: https://technet.microsoft.com/en-us/library/Cc771275(v=WS.10).aspx
- On Mac: http://osxdaily.com/2018/07/18/get-telnet-macos/
Q: I am unable to access mudb.mulesoft-training.com. Why?
A: Most probably you are behind a firewall. To be sure, issue telnet command using telnet mudb.mulesoft-training.com 3306. If you see a prompt asking you to enter a password, you are successful at accessing the service...no need to enter a password.
But if the telnet session times out, it indicates that your current network does not allow you to access the service. At this point, you can do one of the following options:
- Ask your network admin to open port 3306 on the firewall. Most probably this will not happen, due to corporate security concerns. But you can always try.
- Try using a semi restricted or guest wifi network, if one available and test the connectivity
- Run the local training services (see details below on how to do that).
- Try connecting from home where the network is more in your control
Q: How do I run the local training services?
A: Make sure you have downloaded all the course materials including StudentFiles from LMS. Extract the contents of StudentFiles.zip file to a directory, and follow the steps below:
- Open a command prompt (terminal).
- Change the directory to your studentFiles/jars folder.
- Start the local services by issuing command java –jar mulesoft-training-services-X.X.X.jar.
- Leave this terminal running. This runs multiple services including open source Derby database, a couple of SOAP and RESTful services etc,.
Q: How do I configure a database connection in Studio for the local Derby Database that's running as part of local training services?
A: Follow the steps below:
- Open Studio and create a Database Connector configuration using Generic Type and use the following details:
- Then to add the Maven Dependency, search for derbyclient (NOT derby) and choose org.apache.derby.derbyclient.10.15.2.0 from the list and edit the version to 10.14.2.0 as shown below. (Note: default version 10.15.x.x does not work with Java8)
- Finally Test Connection for Derby_Configuration Global Element.
Q: United flights service: I can access the service using the browser, but not from Anypoint Studio. Why?
A: United flights service can be accessed using URL: http://mu.learn.mulesoft.com/united/flights
If you can access the URL (and see JSON results) using the browser but not from Anypoint Studio means that you are behind a Proxy server. Your IT team probably set up the proxy configuration in the browser already and thus you can access the United flights service when using the browser.
Since the proxy is not automatically set in Anypoint Studio, you will have to manually configure it for Studio. You can do that using Preferences dialog box as shown below. Here’s a link to more details on that.
You can always search this forum for "proxy" to get some suggestions. I have posted a small write-up a while back at https://forums.mulesoft.com/questions/26152/training-web-services-not-accessible-through-mule.html#comment-46485