Thanks,
this is what I'm looking for, but I keep on having a doubt, in the example
placed in cxf test, the property is loaded from code, and no location is
set in the spring config file to a properties file, see:
<bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
<httpj:engine-factory bus="cxf">
<httpj:engine port="${testUtils.Port}">
as you can see testUtils.Port is yet asigned from code, that is what I'm
not able to do in order to load port number dynamically,
thansk
2012/10/13 <[email protected]>
> You can define a property for the port and then load that from properties
> using property placeholder configurer in spring.
>
> http://www.mkyong.com/spring/spring-propertyplaceholderconfigurer-example/
>
>
> http://static.springsource.org/spring/docs/3.1.0.RELEASE/api/org/springframework/beans/factory/config/PropertyPlaceholderConfigurer.html
> On Oct 14, 2012 3:15 AM, "Juan José Pérez Consuegra" <[email protected]>
> wrote:
>
> > I think i've found the error, is that in my config file I established
> port
> > number = "0", becouse I want to aply security rule to any port number,
> and
> > it doesn't. How can I set port number dynamically as in the example??
> >
> > 2012/10/12 Freeman Fang <[email protected]>
> >
> > > Hi,
> > >
> > > We have a system test which demonstrate how to enable jetty basic auth,
> > it
> > > should be a good start for you. From this link[1] you can find all
> > > material, the test code, the configuration files, it's very similar as
> > what
> > > you want to do.
> > >
> > > [1]http://svn.apache.org/viewvc?view=revision&revision=1075784
> > > -------------
> > > Freeman Fang
> > >
> > > Red Hat, Inc.
> > > FuseSource is now part of Red Hat
> > > Web: http://fusesource.com | http://www.redhat.com/
> > > Twitter: freemanfang
> > > Blog: http://freemanfang.blogspot.com
> > > http://blog.sina.com.cn/u/1473905042
> > > weibo: http://weibo.com/u/1473905042
> > >
> > > On 2012-10-12, at 上午5:05, Juan José Pérez Consuegra wrote:
> > >
> > > > I'm trying to use Jetty security loading configuration from xml
> config
> > > > file. The file loads without any error but policies seems not to
> work.
> > I
> > > > thought to load configuration via code, but I'm using
> > > > JAXRSServerFactoryBean and it seems also not to be possible. Here it
> is
> > > mi
> > > > config file:
> > > >
> > > > <beans xmlns="http://www.springframework.org/schema/beans"
> > > > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> > > > xmlns:httpj="
> > > > http://cxf.apache.org/transports/http-jetty/configuration"
> > > > xsi:schemaLocation="
> > > > http://cxf.apache.org/transports/http-jetty/configuration
> > > > http://cxf.apache.org/schemas/configuration/http-jetty.xsd
> > > > http://www.springframework.org/schema/beans
> > > > http://www.springframework.org/schema/beans/spring-beans.xsd">
> > > >
> > > > <httpj:engine-factory bus="cxf">
> > > > <httpj:engine port="0">
> > > > <httpj:threadingParameters minThreads="5"
> > > > maxThreads="15" />
> > > > <httpj:handlers>
> > > > <bean
> > > > class="org.eclipse.jetty.security.ConstraintSecurityHandler">
> > > > <property name="loginService"
> > > > ref="securityLoginService" />
> > > > <property name="constraintMappings">
> > > > <list>
> > > > <ref bean="securityConstraintMapping" />
> > > > </list>
> > > > </property>
> > > > </bean>
> > > > </httpj:handlers>
> > > > </httpj:engine>
> > > > </httpj:engine-factory>
> > > >
> > > > <bean id="securityLoginService"
> > > > class="org.eclipse.jetty.security.HashLoginService">
> > > > <property name="name" value="WSRealm" />
> > > > <property name="config"
> > > >
> > >
> >
> value="src/es/uned/scc/related/cserver/ws/configuration/jetty-realm.properties"
> > > > />
> > > > </bean>
> > > >
> > > > <bean id="securityConstraint"
> > > > class="org.eclipse.jetty.http.security.Constraint">
> > > > <property name="name" value="BASIC" />
> > > > <property name="roles" value="admin" />
> > > > <property name="authenticate" value="true" />
> > > > </bean>
> > > >
> > > > <bean id="securityConstraintMapping"
> > > > class="org.eclipse.jetty.security.ConstraintMapping">
> > > > <property name="constraint" ref="securityConstraint" />
> > > > <property name="pathSpec" value="/*" />
> > > > </bean>
> > > > </beans>
> > > >
> > > >
> > > > jetty-realm.properties
> > > > # Defines users that can access the web (console, demo, etc.)
> > > > # username: password [,rolename ...]
> > > > ffang: pswd, admin
> > > >
> > > > And the code that creates the server:
> > > >
> > > > static{
> > > > // set the configuration file
> > > > SpringBusFactory factory = new SpringBusFactory();
> > > > Bus bus =
> > > >
> > >
> >
> factory.createBus("src/es/uned/scc/related/cserver/ws/configuration/server-sec-bean.xml");
> > > > BusFactory.setDefaultBus(bus);
> > > > }
> > > >
> > > > ....
> > > > ....
> > > > ....
> > > > .....
> > > >
> > > > public void start() throws Exception{
> > > > if (sf == null){
> > > > sf = new JAXRSServerFactoryBean();
> > > > sf.setResourceClasses(RLABSystemWSRest.class);
> > > > sf.setResourceProvider(RLABSystemWSRest.class,
> > > > new SingletonResourceProvider(new RLABSystemWSRest()));
> > > > sf.setAddress(address);
> > > >
> > > >
> > > > server = sf.create();
> > > >
> > > > System.out.println("Servidor arrancado y servicio
> > > > publicado...");
> > > > } else {
> > > > if (server.isStarted()) {
> > > > System.out.println("Servidor ya estaba arrancado y el
> > servicio
> > > > publicado...");
> > > > }else{
> > > > server.start();
> > > > System.out.println("Servidor arrancado y servicio
> > > > publicado...");
> > > > }
> > > > }
> > > > }
> > > >
> > > >
> > > > As I said before, the config file loads perfectly, at least
> apparently,
> > > but
> > > > if I try to call any operation defined as service without any
> > > credential, I
> > > > receive server status 200 OK, and the correct response of course.
> > > >
> > > > Any idea.
> > > >
> > > > Thank to everybody,
> > > >
> > > > Juanjo.
> > >
> > >
> >
>