Today I was playing with the jetty-maven-plugin and I came across two dilemmas:
- How do I get Jetty to run on port 80?
- How do I edit files (in Windows) once Jetty is running?
To solve the first problem, I initially used the system properties on the plugin and passed in the jetty.port variable as follows:
<plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version>${jetty.version}</version> <configuration> <systemProperties> <systemProperty> <name>jetty.port</name> <value>80</value> </systemProperty> </systemProperties> <webAppConfig> <resourceBases> <resourceBase>src/main</resourceBase> <resourceBase>src/main/resources</resourceBase> <resourceBase>src/test</resourceBase> <resourceBase>src/test/resources</resourceBase> </resourceBases> </webAppConfig> </configuration> </plugin>
However, I still had the second problem: I couldn’t edit files (in Windows) once Jetty was running. I did some digging and it looks like there is a problem with the Jetty NIO connector in Windows. There are a number of work arounds which allow the use of NIO and editing at the same time. However, these solutions involved other files or a custom webdefault.xml. In order to avoid doing this and since I use this in development, I opted to switch the Connector over to BIO. I found the connector on the Jetty site but unfortunately Maven kept throwing an error. Luckily though I found the Eclipse provided one org.eclipse.jetty.server.bio.SocketConnector. This is the final POM setting to run on port 80 and allow files to be edited:
<plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version>7.4.2.v20110526</version> <configuration> <connectors> <connector implementation="org.eclipse.jetty.server.bio.SocketConnector"> <port>80</port> <maxIdleTime>60000</maxIdleTime> </connector> </connectors> <webAppConfig> <resourceBases> <resourceBase>src/main</resourceBase> <resourceBase>src/main/resources</resourceBase> <resourceBase>src/test</resourceBase> <resourceBase>src/test/resources</resourceBase> </resourceBases> </webAppConfig> </configuration> </plugin>
- Spring Security Tutorial: Form Login Java Configuration - September 27, 2014
- Spring Security Tutorial: 3-Legged OAuth 1.0 - June 9, 2014
- Spring Security Tutorial: 2-Legged OAuth 1.0 - June 3, 2014