Building Mango in Eclipse
-
Obvious sounding, i know, but can you check that there is a <tomcat>/webapps/test directory?
Also (assuming you're using ANT), what does "ant list" tell you?
-
Hi mlohbihler,
yes this folder exist and have into:
/audio
/exception
/graphics
/images
/resources
/uploads
/WEB-INF
customViewExample.jsp
index.jsp
soundmanager2.swf
soundmanager2_flash9.swfi guess the ant is used to build and get what i need to build the project and deploy.
but i don't use the ant because Andras said this is not necessary
sorry my ignorance...
and thanks for your patienceregards,
Mario -
What do you see when you hit http://localhost:8080/manager/list (changing host info as necessary)? This assumes that you left the manager application in the deployment. You should be able to find your u/p in the conf/tomcat-users.xml file.
-
Hi,
I try do everything from beginning again...because i could't access http://localhost:8080/manager/list
so i install the tomcat6 againand when i try build i have another error
[copy] Copying 2797 files to /home/mario/Programas/apache-tomcat-6.0.20/webapps/mango
BUILD FAILED
/home/mario/workspace7/SuperMango/build.xml:117: Failed to copy /home/mario/workspace7/SuperMango/build/WEB-INF/classes/com/serotonin/mango/rt/maint/work/WorkItem.class to /home/mario/Programas/apache-tomcat-6.0.20/webapps/mango/WEB-INF/classes/com/serotonin/mango/rt/maint/work/WorkItem.class due to java.io.FileNotFoundException /home/mario/Programas/apache-tomcat-6.0.20/webapps/mango/WEB-INF/classes/com/serotonin/mango/rt/maint/work/WorkItem.class (No such file or directory)Total time: 3 seconds
sorry my ignorance...
and thanks for your patienceregards,
Mario -
Regarding your problem to access the manager: did you check that the manager role was assigned to the user with which you tried to access the manager ?
In conf/tomcat-users.xml you should have something like
<tomcat-users>
<role rolename="manager"/>
<user username="manager" password="manager" roles="manager"/>
</tomcat-users>to be able to access http://localhost:8080/manager/html with user manager
-
Hi Andras,
in my tomcat-users.xml i have this
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="manager" password="manager" roles="tomcat,manager"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/></tomcat-users>
and in my build.properties i have
tomcat.home=/home/mario/Programas/apache-tomcat-6.0.20
tomcat.manager.url=http://localhost:8080/manager
tomcat.manager.username=manager
tomcat.manager.password=manager
tomcat.hostname=webapps/ROOTApp name and app path are separated to accomodate root deployments. (i.e. 'ROOT' vs. '/')
tomcat.appdir=mango
tomcat.apppath=/mangoand when i run the build.xml to createConfigFiles
Buildfile: /home/mario/workspace7/SuperMango/build.xml
createConfigFiles:
[copy] Copying 1 file to /home/mario/workspace7/SuperMango/build/WEB-INF/classes
[copy] Copying 1 file to /home/mario/workspace7/SuperMango/build/WEB-INF/classes
BUILD SUCCESSFUL
Total time: 466 millisecondsbut when i run to deploy[default]
Buildfile: /home/mario/workspace7/SuperMango/build.xml
compile:
static:
build:
copy:
[copy] Copying 2797 files to /home/mario/Programas/apache-tomcat-6.0.20/webapps/ROOT/mangoBUILD FAILED
/home/mario/workspace7/SuperMango/build.xml:117: Failed to copy /home/mario/workspace7/SuperMango/build/WEB-INF/classes/com/serotonin/mango/rt/maint/work/WorkItem.class to /home/mario/Programas/apache-tomcat-6.0.20/webapps/ROOT/mango/WEB-INF/classes/com/serotonin/mango/rt/maint/work/WorkItem.class due to java.io.FileNotFoundException /home/mario/Programas/apache-tomcat-6.0.20/webapps/ROOT/mango/WEB-INF/classes/com/serotonin/mango/rt/maint/work/WorkItem.class (No such file or directory)Total time: 2 seconds
other thing i observe is the fact when i started tomcat by the eclipse, i can't access the "http://localhost:8080/" , returning a HTTP Status 404
but when i started the tomcat by console like root, i can access the homepage of tomcat("http://localhost:8080/") and "http://localhost:8080/manager/html" normally
sorry my ignorance...
and thanks for your patienceregards,
Mario -
Hi Mario,
If you're going to have a context path of "mango", then your hostname should not include "ROOT". Try changing the following build.properties value:
tomcat.hostname=webapps
-
Hi mlohbihler,
i changed to
tomcat.hostname=webapps
but don't have any effect...
Buildfile: /home/mario/workspace7/SuperMango/build.xml
compile:
static:
build:
copy:
[copy] Copying 2797 files to /home/mario/Programas/apache-tomcat-6.0.20/webapps/mangoBUILD FAILED
/home/mario/workspace7/SuperMango/build.xml:117: Failed to copy /home/mario/workspace7/SuperMango/build/WEB-INF/classes/com/serotonin/mango/rt/maint/work/WorkItem.class to /home/mario/Programas/apache-tomcat-6.0.20/webapps/mango/WEB-INF/classes/com/serotonin/mango/rt/maint/work/WorkItem.class due to java.io.FileNotFoundException /home/mario/Programas/apache-tomcat-6.0.20/webapps/mango/WEB-INF/classes/com/serotonin/mango/rt/maint/work/WorkItem.class (No such file or directory)Total time: 3 seconds
sorry my ignorance...
and thanks for your patienceregards,
Mario -
Maybe a silly question, but can you say how much of this path actually exists:
/home/mario/Programas/apache-tomcat-6.0.20/webapps/mango/WEB-INF/classes/com/serotonin/mango/rt/maint/work/ -
Hi,
maybe is not a silly question hehehehe
only this is real
/home/mario/Programas/apache-tomcat-6.0.20/webapps/
sorry my ignorance...
and thanks for your patienceregards,
Mario -
Incidentally, i strongly recommend changing the password in your tomcat-users file. There is a known crawler that looks for unprotected Tomcat instances and uses the manager to upload and start applications.
-
That comment above was for all forum users, not just Mario.
So, Mario, are you sure the user under which the build is running has permissions to write to the "webapps" directory?
-
Hi mlohbihler,
i change the permission and works now i have the folder
/home/mario/Programas/apache-tomcat-6.0.20/webapps/mango
and the build is ok
Buildfile: /home/mario/workspace7/SuperMango/build.xml
compile:
static:
build:
copy:
[copy] Copying 2797 files to /home/mario/Programas/apache-tomcat-6.0.20/webapps/mango
deploy:
BUILD SUCCESSFUL
Total time: 26 seconds:)
now i will try access http://localhost:8080/mango
right?sorry my ignorance...
and thanks for your patienceregards,
Mario -
Sure, give it a try.
-
Hi,
i try access http://localhost:8080/mango/(http://localhost:8080/mango/login.htm) and i have a error report
com.serotonin.web.dwr.LocalizableMessageConverter.convertOutbound(LocalizableMessageConverter.java:25)
and like in topic
http://mango.serotoninsoftware.com/forum/posts/list/345.pagethe problem is my browser the firefox,when i desativated a plugin... ...works!!!
thank you very much...
hartelijk danksorry my ignorance...
and thanks for your patiencebest regards,
Mario -
You're using 1.8.1? That problem should have been fixed.
Give this jar file a try, but keep the old one just in case it all goes horribly wrong.
Attachment: download link
-
Hi all,
I'm having a problem running/compiling mango using eclipse, and was wondering if someone here might know what I did wrong...
I've followed all the steps described by Andras to build the project in Eclipse, including "add external jar" to add the following jars from ${tomcat.home}/lib
servlet-api
jsp-apiWhen I try to build, I get several compile errors starting with
[javac] C:\Dev\testing\workspace\Mango\src\com\serotonin\mango\vo\User.java:26: package javax.servlet.http does not exist [javac] import javax.servlet.http.HttpSessionBindingEvent;
Finally, I copied the files
servlet-api.jar and
jsp-api.jarinto ...war\WEB-INF\lib.
Then the build process successfully compiles and copies files to Tomcat's webapps folder. In fact, it does this even if I remove the "external jars" servlet-api and jsp-api from classpath (using eclipse)!
However, when I try to run the application, it returns a HTTP Status 500 page with a null pointer exception in javax.servlet.http.HttpServlet.service
org.apache.jasper.JasperException: java.lang.NullPointerException
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:536)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:368)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)I suspect this is related to the servlet-api jar.
Anyone have any suggestions...?
Jay
-
I'm having the same problem...
I'll work on it more tonight or tomorrow and see what happens... -
hello team!
I´m trying to build mango source 1.12.4 and I got the next error:
> [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\vo\dataSource\DataSourceVO.java:434: error: name has private access in DataSourceVO [javac] AuditEventType.maybeAddPropertyChangeMessage(list, "dsEdit.head.name", from.name, name); [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\vo\dataSource\DataSourceVO.java:435: error: xid has private access in DataSourceVO [javac] AuditEventType.maybeAddPropertyChangeMessage(list, "common.xid", from.xid, xid); [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\vo\dataSource\DataSourceVO.java:436: error: enabled has private access in DataSourceVO [javac] AuditEventType.maybeAddPropertyChangeMessage(list, "common.enabled", from.enabled, enabled); [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\br\org\scadabr\vo\dataSource\dnp3\Dnp3DataSourceVO.java:164: error: rbePeriodType has private access in Dnp3DataSourceVO [javac] AuditEventType.maybeAddPeriodChangeMessage(list, "dsEdit.dnp3.rbePeriod", from.rbePeriodType, [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\br\org\scadabr\vo\dataSource\dnp3\Dnp3DataSourceVO.java:165: error: rbePollPeriods has private access in Dnp3DataSourceVO [javac] from.rbePollPeriods, rbePeriodType, rbePollPeriods); [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\br\org\scadabr\vo\dataSource\dnp3\Dnp3DataSourceVO.java:166: error: synchPeriods has private access in Dnp3DataSourceVO [javac] AuditEventType.maybeAddPropertyChangeMessage(list, "dsEdit.dnp3.synchPeriod", from.synchPeriods, synchPeriods); [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\br\org\scadabr\vo\dataSource\dnp3\Dnp3DataSourceVO.java:167: error: staticPollPeriods has private access in Dnp3DataSourceVO [javac] AuditEventType.maybeAddPropertyChangeMessage(list, "dsEdit.dnp3.staticPeriod", from.staticPollPeriods, [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\br\org\scadabr\vo\dataSource\dnp3\Dnp3DataSourceVO.java:169: error: sourceAddress has private access in Dnp3DataSourceVO [javac] AuditEventType.maybeAddPropertyChangeMessage(list, "dsEdit.dnp3.sourceAddress", from.sourceAddress, [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\br\org\scadabr\vo\dataSource\dnp3\Dnp3DataSourceVO.java:171: error: slaveAddress has private access in Dnp3DataSourceVO [javac] AuditEventType.maybeAddPropertyChangeMessage(list, "dsEdit.dnp3.slaveAddress", from.slaveAddress, slaveAddress); [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\br\org\scadabr\vo\dataSource\dnp3\Dnp3DataSourceVO.java:172: error: retries has private access in Dnp3DataSourceVO [javac] AuditEventType.maybeAddPropertyChangeMessage(list, "dsEdit.dnp3.retries", from.retries, retries); [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\br\org\scadabr\vo\dataSource\dnp3\Dnp3DataSourceVO.java:173: error: retries has private access in Dnp3DataSourceVO [javac] AuditEventType.maybeAddPropertyChangeMessage(list, "dsEdit.modbus.retries", from.retries, retries); [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\vo\dataSource\modbus\ModbusDataSourceVO.java:207: error: updatePeriodType has private access in ModbusDataSourceVO [javac] AuditEventType.maybeAddPeriodChangeMessage(list, "dsEdit.updatePeriod", from.updatePeriodType, [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\vo\dataSource\modbus\ModbusDataSourceVO.java:208: error: updatePeriods has private access in ModbusDataSourceVO [javac] from.updatePeriods, updatePeriodType, updatePeriods); [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\vo\dataSource\modbus\ModbusDataSourceVO.java:209: error: quantize has private access in ModbusDataSourceVO [javac] AuditEventType.maybeAddPropertyChangeMessage(list, "dsEdit.quantize", from.quantize, quantize); [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\vo\dataSource\modbus\ModbusDataSourceVO.java:210: error: timeout has private access in ModbusDataSourceVO [javac] AuditEventType.maybeAddPropertyChangeMessage(list, "dsEdit.modbus.timeout", from.timeout, timeout); [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\vo\dataSource\modbus\ModbusDataSourceVO.java:211: error: retries has private access in ModbusDataSourceVO [javac] AuditEventType.maybeAddPropertyChangeMessage(list, "dsEdit.modbus.retries", from.retries, retries); [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\vo\dataSource\modbus\ModbusDataSourceVO.java:212: error: contiguousBatches has private access in ModbusDataSourceVO [javac] AuditEventType.maybeAddPropertyChangeMessage(list, "dsEdit.modbus.contiguousBatches", from.contiguousBatches, [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\vo\dataSource\modbus\ModbusDataSourceVO.java:215: error: createSlaveMonitorPoints has private access in ModbusDataSourceVO [javac] from.createSlaveMonitorPoints, createSlaveMonitorPoints); [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\vo\dataSource\modbus\ModbusDataSourceVO.java:216: error: maxReadBitCount has private access in ModbusDataSourceVO [javac] AuditEventType.maybeAddPropertyChangeMessage(list, "dsEdit.modbus.maxReadBitCount", from.maxReadBitCount, [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\vo\dataSource\modbus\ModbusDataSourceVO.java:219: error: maxReadRegisterCount has private access in ModbusDataSourceVO [javac] from.maxReadRegisterCount, maxReadRegisterCount); [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\vo\dataSource\modbus\ModbusDataSourceVO.java:221: error: maxWriteRegisterCount has private access in ModbusDataSourceVO [javac] from.maxWriteRegisterCount, maxWriteRegisterCount); [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\util\test\DummyServletContext.java:35: error: DummyServletContext is not abstract and does not override abstract method getJspConfigDescriptor() in ServletContext [javac] public class DummyServletContext implements ServletContext { [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\util\test\DummyServletContext.java:54: error: getAttributeNames() in DummyServletContext cannot implement getAttributeNames() in ServletContext [javac] public Enumeration<?> getAttributeNames() { [javac] ^ [javac] return type Enumeration<?> is not compatible with Enumeration<String> [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\util\test\DummyServletContext.java:77: error: getInitParameterNames() in DummyServletContext cannot implement getInitParameterNames() in ServletContext [javac] public Enumeration<?> getInitParameterNames() { [javac] ^ [javac] return type Enumeration<?> is not compatible with Enumeration<String> [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\util\test\DummyServletContext.java:155: error: getServletNames() in DummyServletContext cannot implement getServletNames() in ServletContext [javac] public Enumeration<?> getServletNames() { [javac] ^ [javac] return type Enumeration<?> is not compatible with Enumeration<String> [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\util\test\DummyServletContext.java:161: error: getServlets() in DummyServletContext cannot implement getServlets() in ServletContext [javac] public Enumeration<?> getServlets() { [javac] ^ [javac] return type Enumeration<?> is not compatible with Enumeration<Servlet> [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\util\test\DummyServletContext.java:131: error: getResourcePaths(String) in DummyServletContext cannot implement getResourcePaths(String) in ServletContext [javac] public Set<?> getResourcePaths(String arg0) { [javac] ^ [javac] return type Set<?> is not compatible with Set<String> [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\util\test\DummyServletContext.java:53: error: method does not override or implement a method from a supertype [javac] @Override [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\util\test\DummyServletContext.java:76: error: method does not override or implement a method from a supertype [javac] @Override [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\util\test\DummyServletContext.java:130: error: method does not override or implement a method from a supertype [javac] @Override [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\util\test\DummyServletContext.java:154: error: method does not override or implement a method from a supertype [javac] @Override [javac] ^ [javac] C:\Users\Lordportux\workspace\myMangoBranch\src\com\serotonin\mango\util\test\DummyServletContext.java:160: error: method does not override or implement a method from a supertype [javac] @Override [javac] ^ [javac] Note: Some input files use or override a deprecated API. [javac] Note: Recompile with -Xlint:deprecation for details. [javac] 32 errors
what's the problem? :(
-
In addition, i suggest modifying the code in your tomcat-users computer file. There is a known crawler that looks for credit card Tomcat circumstances and uses the administrator to publish and start programs.