[OFBiz] Users - implementing single sign on with OFBiz and another application

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

[OFBiz] Users - implementing single sign on with OFBiz and another application

John Donne
Hi again,

In some previous posts, I mentioned that I need to access server.xml in
order to implement a single sign on approach.  Since the more recent version
of OFBiz don't have a server.xml in the embedded Tomcat, I've been looking
for file that functions in a similar way.  I think I've found the section of
ofbiz-containers.xml which I need to modify. Specifically,

<!-- uncomment for cluster support
            <property name="default-server-cluster" value="cluster">
                <property name="rep-valve-filter">
                   
<property-value>.*\.gif;.*\.js;.*\.jpg;.*\.htm;.*\.html;.*\.txt;</property-value>
                </property>
                <property name="manager-class"
value="org.apache.catalina.cluster.session.DeltaManager"/>
                <property name="debug" value="5"/>
                <property name="expire-session" value="false"/>
                <property name="use-dirty" value="true"/>
                <property name="replication-mode=" value="pooled"/>
                <property name="tcp-listen-host" value="auto"/>
                <property name="tcp-listen-port" value="4001"/>
                <property name="tcp-sector-timeout" value="100"/>
                <property name="tcp-thread-count" value="6"/>
                <property name="mcast-bind-addr" value="192.168.2.1"/>
                <property name="mcast-addr" value="224.0.0.1"/>
                <property name="mcast-port" value="45564"/>
                <property name="mcast-freq" value="500"/>
                <property name="mcast-drop-time" value="3000"/>
            </property>
-->

However, before even trying to modify it, I decided to uncomment the code to
see if it works. I got the following exception and stack trace:

13820 (main) [   SimpleTcpCluster.java:433:ERROR] Unable to start cluster.
java.net.BindException: Cannot assign requested address
        at java.net.PlainDatagramSocketImpl.bind(Native Method)
        at java.net.DatagramSocket.bind(DatagramSocket.java:368)
        at java.net.MulticastSocket.<init>(MulticastSocket.java:147)
        at
org.apache.catalina.cluster.mcast.McastServiceImpl.setupSocket(McastServiceImpl.java:144)
        at
org.apache.catalina.cluster.mcast.McastServiceImpl.<init>(McastServiceImpl.java:130)
        at
org.apache.catalina.cluster.mcast.McastService.start(McastService.java:208)
        at
org.apache.catalina.cluster.mcast.McastService.start(McastService.java:167)
        at
org.apache.catalina.cluster.tcp.SimpleTcpCluster.start(SimpleTcpCluster.java:418)
        at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1002)        
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
        at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)        
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
        at org.apache.catalina.startup.Embedded.start(Embedded.java:789)
        at
org.ofbiz.catalina.container.CatalinaContainer.start(CatalinaContainer.java:225)
        at
org.ofbiz.base.container.ContainerLoader.start(ContainerLoader.java:89)
        at org.ofbiz.base.start.Start.startStartLoaders(Start.java:272)
        at org.ofbiz.base.start.Start.startServer(Start.java:323)
        at org.ofbiz.base.start.Start.start(Start.java:327)
        at org.ofbiz.base.start.Start.main(Start.java:413)
org.ofbiz.base.start.StartupException: Cannot start()
org.ofbiz.catalina.container.CatalinaContainer (null)
        at
org.ofbiz.base.container.ContainerLoader.start(ContainerLoader.java:91)
        at org.ofbiz.base.start.Start.startStartLoaders(Start.java:272)
        at org.ofbiz.base.start.Start.startServer(Start.java:323)
        at org.ofbiz.base.start.Start.start(Start.java:327)
        at org.ofbiz.base.start.Start.main(Start.java:413)
org.ofbiz.base.container.ContainerException
        at
org.ofbiz.catalina.container.CatalinaContainer.start(CatalinaContainer.java:227)
        at
org.ofbiz.base.container.ContainerLoader.start(ContainerLoader.java:89)
        at org.ofbiz.base.start.Start.startStartLoaders(Start.java:272)
        at org.ofbiz.base.start.Start.startServer(Start.java:323)
        at org.ofbiz.base.start.Start.start(Start.java:327)
        at org.ofbiz.base.start.Start.main(Start.java:413)
LifecycleException:  java.net.BindException: Cannot assign requested address
        at
org.apache.catalina.cluster.tcp.SimpleTcpCluster.start(SimpleTcpCluster.java:434)
        at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1002)        
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
        at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)        
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
        at org.apache.catalina.startup.Embedded.start(Embedded.java:789)
        at
org.ofbiz.catalina.container.CatalinaContainer.start(CatalinaContainer.java:225)
        at
org.ofbiz.base.container.ContainerLoader.start(ContainerLoader.java:89)
        at org.ofbiz.base.start.Start.startStartLoaders(Start.java:272)
        at org.ofbiz.base.start.Start.startServer(Start.java:323)
        at org.ofbiz.base.start.Start.start(Start.java:327)
        at org.ofbiz.base.start.Start.main(Start.java:413)
org.ofbiz.base.container.ContainerException
        at
org.ofbiz.catalina.container.CatalinaContainer.start(CatalinaContainer.java:227)
        at
org.ofbiz.base.container.ContainerLoader.start(ContainerLoader.java:89)
        at org.ofbiz.base.start.Start.startStartLoaders(Start.java:272)
        at org.ofbiz.base.start.Start.startServer(Start.java:323)
        at org.ofbiz.base.start.Start.start(Start.java:327)
        at org.ofbiz.base.start.Start.main(Start.java:413)
LifecycleException:  java.net.BindException: Cannot assign requested address
        at
org.apache.catalina.cluster.tcp.SimpleTcpCluster.start(SimpleTcpCluster.java:434)
        at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1002)        
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
        at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)        
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
        at org.apache.catalina.startup.Embedded.start(Embedded.java:789)
        at
org.ofbiz.catalina.container.CatalinaContainer.start(CatalinaContainer.java:225)
        at
org.ofbiz.base.container.ContainerLoader.start(ContainerLoader.java:89)
        at org.ofbiz.base.start.Start.startStartLoaders(Start.java:272)
        at org.ofbiz.base.start.Start.startServer(Start.java:323)
        at org.ofbiz.base.start.Start.start(Start.java:327)
        at org.ofbiz.base.start.Start.main(Start.java:413)
LifecycleException:  java.net.BindException: Cannot assign requested address
        at
org.apache.catalina.cluster.tcp.SimpleTcpCluster.start(SimpleTcpCluster.java:434)
        at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1002)        
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
        at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)        
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
        at org.apache.catalina.startup.Embedded.start(Embedded.java:789)
        at
org.ofbiz.catalina.container.CatalinaContainer.start(CatalinaContainer.java:225)
        at
org.ofbiz.base.container.ContainerLoader.start(ContainerLoader.java:89)
        at org.ofbiz.base.start.Start.startStartLoaders(Start.java:272)
        at org.ofbiz.base.start.Start.startServer(Start.java:323)
        at org.ofbiz.base.start.Start.start(Start.java:327)
        at org.ofbiz.base.start.Start.main(Start.java:413)
13834 (OFBiz_Shutdown_Hook) [    ContainerLoader.java:102:INFO ] Shutting
down containers

Can you tell me what I'm doing wrong? Do I need to modify some other
configuration file somewhere?

On a related issue, in order to implement session sharing with either a file
or JDBC store, I need to be able to modify ofbiz-containers.xml to
incorporate the following information:

<Manager className="org.apache.catalina.session.PersistentManager">
    <Store className="org.apache.catalina.session.FileStore"
directory="/tempStore"/>
</Manager>

However, note that the "Store" has two attributes, a className and
directory. Looking through the rest of ofbiz-containers.xml, I could not
find a similar declaration using the <parameter name="xxx" value="yyy">
format for two attributes. So, I'm taking a guess and assuming the following
modification would work:

<property name="default-server-cluster" value="cluster">
                <property name="rep-valve-filter">
                   
<property-value>.*\.gif;.*\.js;.*\.jpg;.*\.htm;.*\.html;.*\.txt;</property-value>
                </property>
                <property name="manager-class"
value="org.apache.catalina.session.PersistentManager">
                    <property name="store-class"
value="org.apache.catalina.session.FileStore"/>
                    <property name="store-directory" value="/tempStore"/>
                </property>
                <property name="debug" value="5"/>
                <property name="expire-session" value="false"/>
                <property name="use-dirty" value="true"/>
                <property name="replication-mode=" value="pooled"/>
                <property name="tcp-listen-host" value="auto"/>
                <property name="tcp-listen-port" value="4001"/>
                <property name="tcp-sector-timeout" value="100"/>
                <property name="tcp-thread-count" value="6"/>
                <property name="mcast-bind-addr" value="192.168.2.1"/>
                <property name="mcast-addr" value="224.0.0.1"/>
                <property name="mcast-port" value="45564"/>
                <property name="mcast-freq" value="500"/>
                <property name="mcast-drop-time" value="3000"/>
            </property>

Would this modification (theoractically) be correct? I havn't been able to
test it because I can't get the default clustering setup working.

I've been stuck on this for a while now and would appreciate any feedback,
thanks!

_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today - it's FREE!
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/

 
_______________________________________________
Users mailing list
[hidden email]
http://lists.ofbiz.org/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: [OFBiz] Users - implementing single sign on with OFBiz and another application

David E. Jones

Looks like an issue with your mcast-addr and/or mcast-bind-addr (and/
or port...). Just a guess though...

-David


On Aug 23, 2005, at 1:38 PM, John Donne wrote:

> Hi again,
>
> In some previous posts, I mentioned that I need to access  
> server.xml in order to implement a single sign on approach.  Since  
> the more recent version of OFBiz don't have a server.xml in the  
> embedded Tomcat, I've been looking for file that functions in a  
> similar way.  I think I've found the section of ofbiz-
> containers.xml which I need to modify. Specifically,
>
> <!-- uncomment for cluster support
>            <property name="default-server-cluster" value="cluster">
>                <property name="rep-valve-filter">
>                    <property-value>.*\.gif;.*\.js;.*\.jpg;.*\.htm;.*
> \.html;.*\.txt;</property-value>
>                </property>
>                <property name="manager-class"  
> value="org.apache.catalina.cluster.session.DeltaManager"/>
>                <property name="debug" value="5"/>
>                <property name="expire-session" value="false"/>
>                <property name="use-dirty" value="true"/>
>                <property name="replication-mode=" value="pooled"/>
>                <property name="tcp-listen-host" value="auto"/>
>                <property name="tcp-listen-port" value="4001"/>
>                <property name="tcp-sector-timeout" value="100"/>
>                <property name="tcp-thread-count" value="6"/>
>                <property name="mcast-bind-addr" value="192.168.2.1"/>
>                <property name="mcast-addr" value="224.0.0.1"/>
>                <property name="mcast-port" value="45564"/>
>                <property name="mcast-freq" value="500"/>
>                <property name="mcast-drop-time" value="3000"/>
>            </property>
> -->
>
> However, before even trying to modify it, I decided to uncomment  
> the code to see if it works. I got the following exception and  
> stack trace:
>
> 13820 (main) [   SimpleTcpCluster.java:433:ERROR] Unable to start  
> cluster.
> java.net.BindException: Cannot assign requested address
>        at java.net.PlainDatagramSocketImpl.bind(Native Method)
>        at java.net.DatagramSocket.bind(DatagramSocket.java:368)
>        at java.net.MulticastSocket.<init>(MulticastSocket.java:147)
>        at  
> org.apache.catalina.cluster.mcast.McastServiceImpl.setupSocket
> (McastServiceImpl.java:144)
>        at org.apache.catalina.cluster.mcast.McastServiceImpl.<init>
> (McastServiceImpl.java:130)
>        at org.apache.catalina.cluster.mcast.McastService.start
> (McastService.java:208)
>        at org.apache.catalina.cluster.mcast.McastService.start
> (McastService.java:167)
>        at org.apache.catalina.cluster.tcp.SimpleTcpCluster.start
> (SimpleTcpCluster.java:418)
>        at org.apache.catalina.core.ContainerBase.start
> (ContainerBase.java:1002)        at  
> org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
>        at org.apache.catalina.core.ContainerBase.start
> (ContainerBase.java:1012)        at  
> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
>        at org.apache.catalina.startup.Embedded.start(Embedded.java:
> 789)
>        at org.ofbiz.catalina.container.CatalinaContainer.start
> (CatalinaContainer.java:225)
>        at org.ofbiz.base.container.ContainerLoader.start
> (ContainerLoader.java:89)
>        at org.ofbiz.base.start.Start.startStartLoaders(Start.java:272)
>        at org.ofbiz.base.start.Start.startServer(Start.java:323)
>        at org.ofbiz.base.start.Start.start(Start.java:327)
>        at org.ofbiz.base.start.Start.main(Start.java:413)
> org.ofbiz.base.start.StartupException: Cannot start()  
> org.ofbiz.catalina.container.CatalinaContainer (null)
>        at org.ofbiz.base.container.ContainerLoader.start
> (ContainerLoader.java:91)
>        at org.ofbiz.base.start.Start.startStartLoaders(Start.java:272)
>        at org.ofbiz.base.start.Start.startServer(Start.java:323)
>        at org.ofbiz.base.start.Start.start(Start.java:327)
>        at org.ofbiz.base.start.Start.main(Start.java:413)
> org.ofbiz.base.container.ContainerException
>        at org.ofbiz.catalina.container.CatalinaContainer.start
> (CatalinaContainer.java:227)
>        at org.ofbiz.base.container.ContainerLoader.start
> (ContainerLoader.java:89)
>        at org.ofbiz.base.start.Start.startStartLoaders(Start.java:272)
>        at org.ofbiz.base.start.Start.startServer(Start.java:323)
>        at org.ofbiz.base.start.Start.start(Start.java:327)
>        at org.ofbiz.base.start.Start.main(Start.java:413)
> LifecycleException:  java.net.BindException: Cannot assign  
> requested address
>        at org.apache.catalina.cluster.tcp.SimpleTcpCluster.start
> (SimpleTcpCluster.java:434)
>        at org.apache.catalina.core.ContainerBase.start
> (ContainerBase.java:1002)        at  
> org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
>        at org.apache.catalina.core.ContainerBase.start
> (ContainerBase.java:1012)        at  
> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
>        at org.apache.catalina.startup.Embedded.start(Embedded.java:
> 789)
>        at org.ofbiz.catalina.container.CatalinaContainer.start
> (CatalinaContainer.java:225)
>        at org.ofbiz.base.container.ContainerLoader.start
> (ContainerLoader.java:89)
>        at org.ofbiz.base.start.Start.startStartLoaders(Start.java:272)
>        at org.ofbiz.base.start.Start.startServer(Start.java:323)
>        at org.ofbiz.base.start.Start.start(Start.java:327)
>        at org.ofbiz.base.start.Start.main(Start.java:413)
> org.ofbiz.base.container.ContainerException
>        at org.ofbiz.catalina.container.CatalinaContainer.start
> (CatalinaContainer.java:227)
>        at org.ofbiz.base.container.ContainerLoader.start
> (ContainerLoader.java:89)
>        at org.ofbiz.base.start.Start.startStartLoaders(Start.java:272)
>        at org.ofbiz.base.start.Start.startServer(Start.java:323)
>        at org.ofbiz.base.start.Start.start(Start.java:327)
>        at org.ofbiz.base.start.Start.main(Start.java:413)
> LifecycleException:  java.net.BindException: Cannot assign  
> requested address
>        at org.apache.catalina.cluster.tcp.SimpleTcpCluster.start
> (SimpleTcpCluster.java:434)
>        at org.apache.catalina.core.ContainerBase.start
> (ContainerBase.java:1002)        at  
> org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
>        at org.apache.catalina.core.ContainerBase.start
> (ContainerBase.java:1012)        at  
> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
>        at org.apache.catalina.startup.Embedded.start(Embedded.java:
> 789)
>        at org.ofbiz.catalina.container.CatalinaContainer.start
> (CatalinaContainer.java:225)
>        at org.ofbiz.base.container.ContainerLoader.start
> (ContainerLoader.java:89)
>        at org.ofbiz.base.start.Start.startStartLoaders(Start.java:272)
>        at org.ofbiz.base.start.Start.startServer(Start.java:323)
>        at org.ofbiz.base.start.Start.start(Start.java:327)
>        at org.ofbiz.base.start.Start.main(Start.java:413)
> LifecycleException:  java.net.BindException: Cannot assign  
> requested address
>        at org.apache.catalina.cluster.tcp.SimpleTcpCluster.start
> (SimpleTcpCluster.java:434)
>        at org.apache.catalina.core.ContainerBase.start
> (ContainerBase.java:1002)        at  
> org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
>        at org.apache.catalina.core.ContainerBase.start
> (ContainerBase.java:1012)        at  
> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
>        at org.apache.catalina.startup.Embedded.start(Embedded.java:
> 789)
>        at org.ofbiz.catalina.container.CatalinaContainer.start
> (CatalinaContainer.java:225)
>        at org.ofbiz.base.container.ContainerLoader.start
> (ContainerLoader.java:89)
>        at org.ofbiz.base.start.Start.startStartLoaders(Start.java:272)
>        at org.ofbiz.base.start.Start.startServer(Start.java:323)
>        at org.ofbiz.base.start.Start.start(Start.java:327)
>        at org.ofbiz.base.start.Start.main(Start.java:413)
> 13834 (OFBiz_Shutdown_Hook) [    ContainerLoader.java:102:INFO ]  
> Shutting down containers
>
> Can you tell me what I'm doing wrong? Do I need to modify some  
> other configuration file somewhere?
>
> On a related issue, in order to implement session sharing with  
> either a file or JDBC store, I need to be able to modify ofbiz-
> containers.xml to incorporate the following information:
>
> <Manager className="org.apache.catalina.session.PersistentManager">
>    <Store className="org.apache.catalina.session.FileStore"  
> directory="/tempStore"/>
> </Manager>
>
> However, note that the "Store" has two attributes, a className and  
> directory. Looking through the rest of ofbiz-containers.xml, I  
> could not find a similar declaration using the <parameter  
> name="xxx" value="yyy"> format for two attributes. So, I'm taking a  
> guess and assuming the following modification would work:
>
> <property name="default-server-cluster" value="cluster">
>                <property name="rep-valve-filter">
>                    <property-value>.*\.gif;.*\.js;.*\.jpg;.*\.htm;.*
> \.html;.*\.txt;</property-value>
>                </property>
>                <property name="manager-class"  
> value="org.apache.catalina.session.PersistentManager">
>             <property name="store-class"  
> value="org.apache.catalina.session.FileStore"/>
>             <property name="store-directory" value="/tempStore"/>
>         </property>
>                <property name="debug" value="5"/>
>                <property name="expire-session" value="false"/>
>                <property name="use-dirty" value="true"/>
>                <property name="replication-mode=" value="pooled"/>
>                <property name="tcp-listen-host" value="auto"/>
>                <property name="tcp-listen-port" value="4001"/>
>                <property name="tcp-sector-timeout" value="100"/>
>                <property name="tcp-thread-count" value="6"/>
>                <property name="mcast-bind-addr" value="192.168.2.1"/>
>                <property name="mcast-addr" value="224.0.0.1"/>
>                <property name="mcast-port" value="45564"/>
>                <property name="mcast-freq" value="500"/>
>                <property name="mcast-drop-time" value="3000"/>
>            </property>
>
> Would this modification (theoractically) be correct? I havn't been  
> able to test it because I can't get the default clustering setup  
> working.
>
> I've been stuck on this for a while now and would appreciate any  
> feedback, thanks!
>
> _________________________________________________________________
> Express yourself instantly with MSN Messenger! Download today -  
> it's FREE! http://messenger.msn.click-url.com/go/onm00200471ave/ 
> direct/01/
>
> _______________________________________________
> Users mailing list
> [hidden email]
> http://lists.ofbiz.org/mailman/listinfo/users
>

 
_______________________________________________
Users mailing list
[hidden email]
http://lists.ofbiz.org/mailman/listinfo/users