[Clustering/JBoss] - Re: Nodes not join Cluster - UDP discarded Message
by jboss_cody
Thank you for the reply Bela,
Before I answer your questions, I thought that I should also mention that I am using vmware Server w/Centos5 to develop my cluster.
I have successfully configured two separate VM's for my cluster. (vmware Server only allows up to 4 virtual NICs per vm)
I started 3 nodes on one vm, and they form a cluster.
Then I start 3 more nodes on the other vm and they form a cluster.
I then changed the cluster-configurations on the 2nd set of nodes, to match those of the 1st set of nodes.
I start the 1st set of nodes. (ips .11, .12, .13). I start the 2nd set of nodes (.21, .22, .23) on the other vm.
I am using UDP transport with the configurations of 'all'. I can see the traffic taking place, but my 2nd set of nodes are unable to JOIN the 1st set of nodes.
I know my problem exists in my UDP configuration, but that's as far as I've gotten.
anonymous wrote : Are the 3 additional boxes in the same subnet as the others ?
-Yes, each share the same subnet addr, I simply copied the network - configurations and only made modifications to the actual host names and ip addrs.
anonymous wrote : Do they bind to correct addresses ? 127.0.0.1 is *not* one !
-Yes, I have the -b option included in the startup scripts of each instance/node.
anonymous wrote : Any firewalls on ? If so, turn off to see whether the JOIN is successful
-No, at the initial configuration of VMware server, we disabled SELinux and any other firewall that might interfere.
anonymous wrote : Do you use VLANs ? If so, the 3 additional boxes need to be in the same VLAN as the others. Make sure VLANs dont drop IP multicast packets
-??? How can I find out this info.
P.S. I've said this before, but just to make it clear, I am a newbie to all of these concepts, so please work with me here.
Sorry for any stupid, obvious questions.
anonymous wrote : If nothing else works, you can always fallback to TCP:TCPPING and
| - list your 6 nodes in TCPPING explicitly
This was my next plan, but from what I've read, there is extra network traffic using this approach.
Oh yeah, Here is an excerpt from a node in the 1st set:
| 2007-10-31 22:55:40,984 WARN [org.jgroups.protocols.pbcast.NAKACK] 192.168.202.11:32789] discarded message from non-member 192.168.202.21:32796, my view is [192.168.202.11:32789|0] [192.168.202.11:32789]
| 2007-10-31 22:55:41,516 WARN [org.jgroups.protocols.pbcast.NAKACK] 192.168.202.11:32789] discarded message from non-member 192.168.202.21:32796, my view is [192.168.202.11:32789|0] [192.168.202.11:32789]
| 2007-10-31 22:55:48,172 WARN [org.jgroups.protocols.pbcast.NAKACK] 192.168.202.11:32787] discarded message from non-member 192.168.202.21:32794, my view is [192.168.202.11:32787|0] [192.168.202.11:32787]
| 2007-10-31 22:55:48,832 WARN [org.jgroups.protocols.pbcast.NAKACK] 192.168.202.11:32787] discarded message from non-member 192.168.202.21:32794, my view is [192.168.202.11:32787|0] [192.168.202.11:32787]
| 2007-10-31 22:55:50,509 DEBUG [org.jboss.web.tomcat.service.session.JBossCacheManager] Looking for sessions that have expired ...
| 2007-10-31 22:55:53,055 WARN [org.jgroups.protocols.pbcast.GMS] merge responses from subgroup coordinators <= 1 ([]). Cancelling merge
| 2007-10-31 22:55:53,056 ERROR [org.jgroups.protocols.pbcast.GMS] coords or merge_id == null
| 2007-10-31 22:55:53,056 ERROR [org.jgroups.protocols.pbcast.GMS] coords or merge_id == null
| 2007-10-31 22:55:55,512 WARN [org.jgroups.protocols.pbcast.GMS] merge responses from subgroup coordinators <= 1 ([]). Cancelling merge
| 2007-10-31 22:55:55,513 ERROR [org.jgroups.protocols.pbcast.GMS] coords or merge_id == null
| 2007-10-31 22:55:55,513 ERROR [org.jgroups.protocols.pbcast.GMS] coords or merge_id == null
| 2007-10-31 22:56:00,514 DEBUG [org.jboss.web.tomcat.service.session.JBossCacheManager] Looking for sessions that have expired ...
| 2007-10-31 22:56:00,590 WARN [org.jgroups.protocols.pbcast.GMS] merge responses from subgroup coordinators <= 1 ([]). Cancelling merge
|
|
|
boolean isBad = (this.Network_traffic == "NOT GOOD") ;
System.out.print(isBad.toString());
->NOT GOOD
Thanks again : )
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4101024#4101024
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4101024
18 years, 1 month
[JBoss Portal] - Classpath error??
by earniedyke
Greetings all,
I am trying to run a Seam 1.2.1.GA application with RichFaces 3.1.2.GA and Faceltes and I continue to receive the error below. Even though the Sun RI is supposed to be the installed JSF implementation, the Admin portlet seems to still be using MyFaces. I can find FacesContext in \jboss-web.deployer\jsf-libs\jsf-api.jar and no where else so I can't understand why this error is occurring.
Thanks in advance for any and all assistance.
Earnie!
Caused by: java.lang.LinkageError: loader constraints violated when linking javax/faces/context/FacesContext class
| at com.sun.facelets.impl.DefaultResourceResolver.resolveUrl(DefaultResourceResolver.java:19)
| at com.sun.facelets.impl.DefaultFaceletFactory.<init>(DefaultFaceletFactory.java:70)
| at com.sun.facelets.FaceletViewHandler.createFaceletFactory(FaceletViewHandler.java:286)
| at com.sun.facelets.FaceletViewHandler.initialize(FaceletViewHandler.java:197)
| at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:494)
| at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
| at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:132)
| at org.apache.myfaces.portlet.MyFacesGenericPortlet.nonFacesRequest(MyFacesGenericPortlet.java:397)
| at org.apache.myfaces.portlet.MyFacesGenericPortlet.nonFacesRequest(MyFacesGenericPortlet.java:377)
| at org.apache.myfaces.portlet.MyFacesGenericPortlet.facesRender(MyFacesGenericPortlet.java:474)
| at org.apache.myfaces.portlet.MyFacesGenericPortlet.doView(MyFacesGenericPortlet.java:323)
| at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:133)
| at javax.portlet.GenericPortlet.render(GenericPortlet.java:306)
| at org.jboss.portal.faces.loader.FacesPortlet.render(FacesPortlet.java:100)
| at org.jboss.portal.portlet.impl.jsr168.PortletContainerImpl.invokeRender(PortletContainerImpl.java:483)
| at org.jboss.portal.portlet.impl.jsr168.PortletContainerImpl.dispatch(PortletContainerImpl.java:405)
| at org.jboss.portal.portlet.container.PortletContainerInvoker$1.invoke(PortletContainerInvoker.java:86)
| at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:131)
| at org.jboss.portal.core.aspects.portlet.TransactionInterceptor.org$jboss$portal$core$aspects$portlet$TransactionInterceptor$invokeRequired$aop(TransactionInterceptor.java:106)
| at org.jboss.portal.core.aspects.portlet.TransactionInterceptor$invokeRequired_9103964459766407072.invokeNext(TransactionInterceptor$invokeRequired_9103964459766407072.java)
| at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
| at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195)
| at org.jboss.portal.core.aspects.portlet.TransactionInterceptor$invokeRequired_9103964459766407072.invokeNext(TransactionInterceptor$invokeRequired_9103964459766407072.java)
| at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
| at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195)
| at org.jboss.portal.core.aspects.portlet.TransactionInterceptor$invokeRequired_9103964459766407072.invokeNext(TransactionInterceptor$invokeRequired_9103964459766407072.java)
| at org.jboss.portal.core.aspects.portlet.TransactionInterceptor.invokeRequired(TransactionInterceptor.java)
| at org.jboss.portal.core.aspects.portlet.TransactionInterceptor.invoke(TransactionInterceptor.java:72)
| at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
| at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| at org.jboss.portal.core.aspects.portlet.HeaderInterceptor.invoke(HeaderInterceptor.java:50)
| at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
| at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| at org.jboss.portal.portlet.aspects.portlet.ProducerCacheInterceptor.invoke(ProducerCacheInterceptor.java:58)
| at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
| at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| at org.jboss.portal.core.aspects.portlet.AjaxInterceptor.invoke(AjaxInterceptor.java:51)
| at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
| at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| at org.jboss.portal.portlet.aspects.portlet.ModesInterceptor.invoke(ModesInterceptor.java:62)
| at org.jboss.portal.portlet.invocation.PortletInterceptor.invoke(PortletInterceptor.java:38)
| at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
|
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4101020#4101020
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4101020
18 years, 1 month
[JBoss Getting Started Documentation] - Help with Weblogic to JBoss migration
by hanif77
I have a problem with JNDI when moving from Weblogic 6 to JBoss 4.2.0.GA.
I have a class which is bound to a JNDI name (Global), but when I do a lookup I always seem to get a copy rather than a reference. This code had previously worked ok on Weblogic.
public class RuleCacheHolder implements Serializable // implements T3StartupDef, IRuleCacheHolder
{
/**
*
*/
private static final long serialVersionUID = 2938516269249036614L;
private String _className = this.getClass().getName();
protected boolean noConnection = false;
private String _cacheName;
private String _cacheType;
private String _types[];
private Hashtable cache = new Hashtable();
private static final String jndiName = "CACHE_HOLDER_";
public RuleCacheHolder(String cacheName, String cacheType, String types[]) {
setCacheName(cacheName);
setCacheType(cacheType);
setTypes(types);
try {
new InitialContext().bind(jndiName + cacheName, this);
// initialiseCache();
// WebLogger.trace(_className+" CACHE_HOLDER_"+getCacheName()+"
// CREATED...");
} catch (NamingException ne) {
ne.printStackTrace();
}
}
After creation I populate the cache hashtable from a different class, however when a subsequent lookup is done the cache hashtable is empty. I am using a jndi prop file and have tried changing the CallByValue setting in jboss-service.xml. There are no errors or exceptions in the lookup.
I have scoured the various sites to no avail so any help would be greatly appreciated.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4101016#4101016
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4101016
18 years, 1 month
[JBoss Seam] - MyFaces, Seam and JBoss 4.2.1 GA problem
by maykellff
Hi all, i have an old MyFaces-EJB3 sample application that i'm refactoring to use Seam, i set every single datail (i've read a lot of tutorial and forum's posts about the topic ) in order to integrate Seam with my old myfaces application but when i try to run it on server i get the following error:
[quoted]
23:51:06,875 INFO [STDOUT] 23:51:06,859 ERROR [StartupServletContextListener] Error initializing ServletContext
java.lang.IllegalArgumentException: Class org.jboss.seam.jsf.SeamApplicationFactory is no javax.faces.application.ApplicationFactory
at javax.faces.FactoryFinder.newFactoryInstance(FactoryFinder.java:132)
at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:107)
at org.apache.myfaces.config.FacesConfigurator.configureApplication(FacesConfigurator.java:439)
[/quoted]
If i let the Myfaces jar files in web-inf/lib but delete the myfaces listener entry from web.xml the application get the following error:
[quoted]
00:27:19,234 INFO [STDOUT] 00:27:19,234 ERROR [[/jsfTest]] StandardWrapper.Throwable
java.lang.IllegalStateException: No Factories configured for this Application. This happens if the faces-initialization does not work at all - make sure that you properly include all configuration settings necessary for a basic faces application and that all the necessary libs are included. Also check the logging output of your web application and your container for any exceptions!
If you did that and find nothing, the mistake might be due to the fact that you use some special web-containers which do not support registering context-listeners via TLD files and a context listener is not setup in your web.xml.
A typical config looks like this;
<listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:90)
at javax.faces.webapp.FacesServlet.init(FacesServlet.java:88)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:981)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4069)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4373)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:761)
at org.apache.catalina.
[/quoted]
If i eliminate the myfaces jar, and the myfaces listener declaration in web.xml the application works well, then the error is exclusively related to the use of Myfaces, i think some kind of conflict between Seam listener and Myfaces Listener, but i don't know why and how solve this.
This is my web.xml:
[qouted]
<?xml version="1.0"?>
<!--
* Copyright 2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
-->
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>jsfTest</display-name>
<context-param>
<param-name>org.ajax4jsf.SKIN</param-name>
<param-value>blueSky</param-value>
</context-param>
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/navigation-rule.xml</param-value>
</context-param>
<context-param>
State saving method: "client" or "server" (= default)
See JSF Specification 2.5.2
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>client</param-value>
</context-param>
<context-param>
<param-name>org.jboss.jbossfaces.WAR_BUNDLES_JSF_IMPL</param-name>
<param-value>true</param-value>
</context-param>
<display-name>Ajax4jsf Filter</display-name>
<filter-name>ajax4jsf</filter-name>
<filter-class>org.ajax4jsf.Filter</filter-class>
<init-param>
<param-name>forceparser</param-name>
<param-value>false</param-value>
</init-param>
<filter-mapping>
<filter-name>ajax4jsf</filter-name>
<servlet-name>Faces Servlet</servlet-name>
REQUEST
FORWARD
INCLUDE
</filter-mapping>
<!-- Listener, that does all the startup work (configuration, init). -->
<listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
<listener-class>org.jboss.seam.servlet.SeamListener</listener-class>
<!-- Faces Servlet -->
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<login-config>
<auth-method>BASIC</auth-method>
</login-config>
</web-app>
[/qouted]
I'm using JBoss 4.2.1 GA, seam 1.2.0.AP and Myfaces 1.1.4
I hope you can help me
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4101012#4101012
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4101012
18 years, 1 month
[JBoss Seam] - need help passing UI params to SFSB
by asookazian
so I tried @RequestParameter with pages.xml config and failed (value was not coming thru, so it was null).
now I'm trying the "regular" JSF way per pg. 292 of the Geary/horstmann 2nd edition.
Anything wrong with the following code? this doesn't work either (I'm viewing the params object values in the eclipse debugger and it's null):
<h:form id="mainForm">
| <h:outputText value="No Direct Reports" rendered="#{myAuditList != null and myAuditList.rowCount==0}"/>
| <h:dataTable id="dataTable1" value="#{myAuditList}" var="myRow" rendered="#{myAuditList != null and myAuditList.rowCount > 0}"
| styleClass="dataTable" rowClasses="oddRow, evenRow" frame="hsides">
|
| <h:column>
| <f:facet name="header">Employee Name</f:facet>
|
| <!-- siteId and employeeNumber hidden fields are used for all radio buttons -->
| <h:outputText id="employeeName" value="#{myRow[0].id.employeeName}"/>
| <h:inputHidden id="employeeNameHidden" value="#{myRow[0].id.employeeName}"/>
| <h:inputHidden id="siteId" value="#{myRow[0].id.siteId}"/>
| <h:inputHidden id="employeeNumber" value="#{myRow[0].id.employeeNumber}"/>
| </h:column>
|
| <h:column>
| <f:facet name="header">SiteId</f:facet>
|
| <h:outputText value="#{myRow[0].id.siteId}"/>
| </h:column>
|
| <h:column>
| <f:facet name="header">EmployeeNumber</f:facet>
|
| <h:outputText value="#{myRow[0].id.employeeNumber}"/>
| </h:column>
|
| <h:column>
| <f:facet name="header">Account Approved?</f:facet>
|
| <h:selectOneRadio id="accountApprovedRB" value="#{myRow[1].icomsAccountApproved}" onclick="processNote(this, #{myAuditList.getRowIndex()}, 'accountApproved');checkForSubmit(#{myAuditList.getRowIndex()})">
| <f:selectItems value="#{securityAuditAction.securityAuditRadioButtons}" />
| </h:selectOneRadio>
| <h:graphicImage id="acctGraphic" value="/img/icon_edit.gif" onclick="editNote(#{myAuditList.getRowIndex()}, 'accountApproved');" style="visibility:hidden"/>
| </h:column>
|
| <h:column>
| <f:facet name="header">Security Level Approved?</f:facet>
| <h:selectOneRadio id="securityLevelApprovedRB" value="#{myRow[1].securityLevelApproved}" onclick="processNote(this, #{myAuditList.getRowIndex()}, 'secLevelApproved');checkForSubmit(#{myAuditList.getRowIndex()})">
| <f:selectItems value="#{securityAuditAction.securityAuditRadioButtons}" />
| </h:selectOneRadio>
| <h:graphicImage id="securityLevelGraphic" value="/img/icon_edit.gif" onclick="editNote(#{myAuditList.getRowIndex()}, 'secLevelApproved');" style="visibility:hidden"/>
| </h:column>
|
| <h:column>
| <f:facet name="header">Adjustment Limit Approved?</f:facet>
| <h:selectOneRadio id="adjustmentLimitApprovedRB" value="#{myRow[1].adjustmentLimitApproved}" onclick="processNote(this, #{myAuditList.getRowIndex()}, 'adjLimitApproved');checkForSubmit(#{myAuditList.getRowIndex()})">
| <f:selectItems value="#{securityAuditAction.securityAuditRadioButtons}" />
| </h:selectOneRadio>
| <h:graphicImage id="adjLimitGraphic" value="/img/icon_edit.gif" onclick="editNote(#{myAuditList.getRowIndex()}, 'adjLimitApproved');" style="visibility:hidden"/>
| </h:column>
|
| <h:column>
| <h:commandButton id="submitEmployee" value="Submit" action="#{securityAuditAction.submit}" style="visibility:hidden">
| <f:param name="securityAuditRowNum" value="#{myAuditList.getRowIndex()}"/>
| </h:commandButton>
| </h:column>
| </h:dataTable>
|
| </h:form>
SFSB:
public void submit() {
|
| //check to see if there are any notes for each radio button for this emploee/row
| //then upddate/insert accordingly
|
| //TO DO: use @RequestParameter injection instead of facescontext...
| FacesContext context = FacesContext.getCurrentInstance();
| Map<String, String> params = context.getExternalContext().getRequestParameterMap();
| int rowNum = Integer.parseInt(params.get("securityAuditRowNum")==null?"":params.get("securityAuditRowNum"));
|
| for (int i = 0; i < 3; i++) {
| TblSecurityAuditNote note = myNotes[rowNum];
| if (note != null) {
| log.info("myNotes["+rowNum+"]["+i+"]: noteText = " + note.getNoteText());
| //em.persist(myNotes[rowNum]);
| }
| }
| }
seems to me this should be very straightforward... I even hard-coded the value like:
<f:param name="securityAuditRowNum" value="bigmomma"/>
value for params map was null in debugger variables...
do you HAVE to set some config code in the pages.xml? if so, the book didn't mention anything about that as far as managed bean JSF configurations for request params passing...
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4101010#4101010
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4101010
18 years, 1 month