Note that there are some explanatory texts on larger screens.

plurals
  1. POInserting into cassandra using hector on Glassfish 3.1
    primarykey
    data
    text
    <p>Im trying to insert a keyspace into cassandra using hector and the SchemaManipulation example given from the hector wiki.</p> <pre><code>package net.zanity.live; import java.util.Arrays; import java.util.List; import me.prettyprint.cassandra.model.BasicColumnDefinition; import me.prettyprint.cassandra.model.BasicColumnFamilyDefinition; import me.prettyprint.cassandra.serializers.StringSerializer; import me.prettyprint.cassandra.service.ThriftCfDef; import me.prettyprint.hector.api.Cluster; import me.prettyprint.hector.api.ddl.*; import me.prettyprint.hector.api.exceptions.HectorException; import me.prettyprint.hector.api.factory.HFactory; /** * * @author zznate * */ public class SchemaManipulation { private static final String DYN_KEYSPACE = "YOUWantToSeeThis"; private static final String DYN_CF = "DynamicCf"; private static final String CF_SUPER = "SuperCf"; private static StringSerializer stringSerializer = StringSerializer.get(); public static void main(String[] args) throws Exception { Cluster cluster = HFactory.getOrCreateCluster("TestCluster", "localhost:9160"); try { if ( cluster.describeKeyspace(DYN_KEYSPACE) != null ) { cluster.dropKeyspace(DYN_KEYSPACE); } BasicColumnDefinition columnDefinition = new BasicColumnDefinition(); columnDefinition.setName(stringSerializer.toByteBuffer("birthdate")); columnDefinition.setIndexName("birthdate_idx"); columnDefinition.setIndexType(ColumnIndexType.KEYS); columnDefinition.setValidationClass(ComparatorType.LONGTYPE.getClassName()); BasicColumnFamilyDefinition columnFamilyDefinition = new BasicColumnFamilyDefinition(); columnFamilyDefinition.setKeyspaceName(DYN_KEYSPACE); columnFamilyDefinition.setName(DYN_CF); columnFamilyDefinition.addColumnDefinition(columnDefinition); BasicColumnFamilyDefinition superCfDefinition = new BasicColumnFamilyDefinition(); superCfDefinition.setKeyspaceName(DYN_KEYSPACE); superCfDefinition.setName(CF_SUPER); superCfDefinition.setColumnType(ColumnType.SUPER); ColumnFamilyDefinition cfDefStandard = new ThriftCfDef(columnFamilyDefinition); ColumnFamilyDefinition cfDefSuper = new ThriftCfDef(superCfDefinition); KeyspaceDefinition keyspaceDefinition = HFactory.createKeyspaceDefinition(DYN_KEYSPACE, "org.apache.cassandra.locator.SimpleStrategy", 1, Arrays.asList(cfDefStandard, cfDefSuper)); cluster.addKeyspace(keyspaceDefinition); // insert some data List&lt;KeyspaceDefinition&gt; keyspaces = cluster.describeKeyspaces(); for (KeyspaceDefinition kd : keyspaces) { if ( kd.getName().equals(DYN_KEYSPACE) ) { System.out.println("Name: " +kd.getName()); System.out.println("RF: " +kd.getReplicationFactor()); System.out.println("strategy class: " +kd.getStrategyClass()); List&lt;ColumnFamilyDefinition&gt; cfDefs = kd.getCfDefs(); for (ColumnFamilyDefinition def : cfDefs) { System.out.println(" CF Type: " +def.getColumnType()); System.out.println(" CF Name: " +def.getName()); System.out.println(" CF Metadata: " +def.getColumnMetadata()); } } } } catch (HectorException he) { he.printStackTrace(); } cluster.getConnectionManager().shutdown(); } } </code></pre> <hr> <p>The jsp code: </p> <pre><code>&lt;%@page language="java" import="net.zanity.live.*" contentType="text/html" pageEncoding="UTF-8"%&gt; &lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"&gt; &lt;html&gt; &lt;head&gt; &lt;meta http-equiv="Content-Type" content="text/html; charset=UTF-8"&gt; &lt;title&gt;GlassFish JSP Page&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;% out.println("CAKrE"); Test test = new Test(); out.println("sting displayed here: " + test.Testt()); %&gt; After this text loads the cassandra schema test will run and prolly crash the webapp &lt;% SchemaManipulation cI = new SchemaManipulation(); SchemaManipulation.main(new String [0]); %&gt; &lt;/body&gt; &lt;/html&gt; </code></pre> <p>Im running this code in Eclipse 3.7.1 Indigo and the code when executed as a java application works and inserts into cassandra, but when i run it on the server it does not.</p> <p>Cassandra is running on its default port as a local host and glasfish is also running on a local host on port 8080. </p> <p>I think the issue is im not placing the hector jars in the correct place, the hector jars are already added to the buildpath but im not sure if that has added them to the server as well. </p> <p>Any help would be appreciated as I'm failing to find useful documentation for cassandra.</p> <p>EDIT: i have added the jar's to the server that was not the problem, issue is still unresolved.</p> <p>Stack Trace of errors:</p> <pre><code>WARNING: StandardWrapperValve[jsp]: PWC1406: Servlet.service() for servlet jsp threw exception java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory at me.prettyprint.cassandra.service.AbstractCluster.&lt;init&gt;(AbstractCluster.java:44) at me.prettyprint.cassandra.service.ThriftCluster.&lt;init&gt;(ThriftCluster.java:21) at me.prettyprint.hector.api.factory.HFactory.createCluster(HFactory.java:192) at me.prettyprint.hector.api.factory.HFactory.getOrCreateCluster(HFactory.java:139) at me.prettyprint.hector.api.factory.HFactory.getOrCreateCluster(HFactory.java:128) at net.zanity.live.SchemaManipulation.main(SchemaManipulation.java:36) at org.apache.jsp.index_jsp._jspService(index_jsp.java:61) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:111) at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:403) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:492) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:378) at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1534) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:281) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595) at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98) at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162) at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:326) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:227) at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:170) at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:822) at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:719) at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1013) at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225) at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137) at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104) at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90) at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79) at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54) at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59) at com.sun.grizzly.ContextTask.run(ContextTask.java:71) at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532) at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513) at java.lang.Thread.run(Thread.java:722) </code></pre>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload