Overview of MATLAB Builder JA Java integration¶
MatlabBuilderJA¶
Need to add the javabuilder.jar Library to the Apache Tomcat folder of global JARs:
- javabuilder.jar location:
$(MATLAB_HOME)/toolbox/javabuilder/jar/
- Tomcat lib dir:
$(TOMCAT_HOME)/lib
Creating a dummy Java webapp: End to End Example¶
- See page 119 from the Matlab Javabuilder Example Guide
- Download the code from MATLAB Central
- Make sure the path for MATLAB's libraries is correctly set:
export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:/Applications/MATLAB_R2013b.app/sys/os/maci64/:/Applications/MATLAB_R2013b.app/runtime/maci64/:/Applications/MATLAB_R2013b.app/bin/maci64/
- Copy your web servers servlet-api.jar file into this directory;
- Copy the javabuilder.jar file from your MATLAB or MCR install root in the directory /toolbox/javabuilder/jar/javabuilder.jar to the web applications lib folder ./webapp/WEB-INF/lib
- Recompile the MATLAB component by running the following MCC command:
/Applications/MATLAB_R2013b.app/bin/mcc -W "java:examples,MagicCalc" -d ./scratch -T "link:lib" -v "class{MagicCalc:./webapp/WEB-INF/mcode/getMagic.m,./webapp/WEB-INF/mcode/getMagicWebFigure.m}"
- this will generate the contents of scratch
- Copy the deployed component from the scratch folder to the web applications lib folder .\webapp\WEB-INF\lib
cp ./scratch/examples.jar ./webapp/WEB-INF/lib
- Compile the web application making sure to reference the servlet-api.jar, the deployed component jar, and the javabuilder.jar
javac -cp servlet-api.jar:./webapp/WEB-INF/lib/javabuilder.jar:./webapp/WEB-INF/lib/examples.jar: -d ./webapp/WEB-INF/classes ./webapp/WEB-INF/src/MagicSquareServlet.java
- Navigate to the web applications directory and create the war file.
cd webapp jar -cvf ../JavaEndToEnd.war . cd ..
- Copy this JavaEndToEnd.war file into your web servers webapps directory
- Start the web server and navigate in a browser to the following url:
http://localhost:8080/JavaEndToEnd/ExamplesPage.jsp
Folder Structure¶
JavaEndToEnd/ ├── scratch │ ├── classes │ │ └── examples │ ├── doc │ │ └── html │ │ ├── examples │ │ └── resources │ └── examples └── webapp └── WEB-INF ├── classes ├── lib ├── mcode └── src