8-Puzzle Depth First Search .. Need Help

Hi, I have the following code for doing a depth first search on the 8-Puzzle problem
The puzzle is stored as an object that contains an array such that the puzzle
1--2--3
4--5--6
7--8--[] is stored as (1,2,3,4,5,6,7,8,0)
The class for the puzzle is:
class Puzzle implements {
     Puzzle parent;
     int[] pzle;
     int blank;
     Puzzle(int p1,int p2,int p3,int p4,int p5, int p6, int p7, int p8, int p9){
          pzle = new int[9];
          pzle[0] = p1; if(p1==0){ blank=0;}
          pzle[1] = p2; if(p2==0){ blank=1;}
          pzle[2] = p3; if(p3==0){ blank=2;}
          pzle[3] = p4; if(p4==0){ blank=3;}
          pzle[4] = p5; if(p5==0){ blank=4;}
          pzle[5] = p6; if(p6==0){ blank=5;}
          pzle[6] = p7; if(p7==0){ blank=6;}
          pzle[7] = p8; if(p8==0){ blank=7;}
          pzle[8] = p9; if(p9==0){ blank=8;}
     public Puzzle() {
     public boolean equals(Puzzle p){
          if(p == null) return false;
          for(int i =0;i<9;i++){
               if(p.pzle!=pzle[i]){
                    return false;
          return true;
     public String toString(){
          return pzle[0] + "\t" + pzle[1] + "\t" + pzle [2] + "\n" +
                    pzle[3] + "\t" + pzle[4] + "\t" + pzle [5] + "\n" +
                    pzle[6] + "\t" + pzle[7] + "\t" + pzle [8] + "\n";
     public String printSolution(){
          String ret ="";
          Puzzle st = parent;
          while(st!=null){
               ret = st + "\n=======================\n" + ret;
               st = st.parent;
          ret=ret+this;
          return ret;
     public ArrayList<Puzzle> successors(){
          ArrayList<Puzzle> succ = new ArrayList<Puzzle>();
          int b = blank;
          if (((b-1) % 3) != 2 && b!=0) {
          Puzzle np1 = new Puzzle();
          np1.parent = this;
          np1.pzle = new int[9];
          for(int i =0;i<9;i++){
               np1.pzle[i] = pzle[i];
          np1.pzle[b] = np1.pzle[b-1]; np1.pzle[b-1] = 0;
          np1.blank = b-1;
          if(!np1.equals(this.parent)){
          succ.add(np1);
          if (((b+1) % 3) != 0) {
          Puzzle np2 = new Puzzle();
          np2.parent = this;
          np2.pzle = new int[9];
          for(int i =0;i<9;i++){
               np2.pzle[i] = pzle[i];
          np2.pzle[b] = np2.pzle[b+1]; np2.pzle[b+1] = 0;
          np2.blank = b+1;
          if(!np2.equals(this.parent)){
               succ.add(np2);
          if (b-3 >= 0) {
          Puzzle np3 = new Puzzle();
          np3.parent = this;
          np3.pzle = new int[9];
          for(int i =0;i<9;i++){
               np3.pzle[i] = pzle[i];
          np3.pzle[b] = np3.pzle[b-3]; np3.pzle[b-3] = 0;
          np3.blank = b-3;
          if(!np3.equals(this.parent)){
               succ.add(np3);
          if (b+3 < 9) {
          Puzzle np4 = new Puzzle();
          np4.parent = this;
          np4.pzle = new int[9];
          for(int i =0;i<9;i++){
               np4.pzle[i] = pzle[i];
          np4.pzle[b] = np4.pzle[b+3]; np4.pzle[b+3] = 0;
          np4.blank = b+3;
          if(!np4.equals(this.parent)){
               succ.add(np4);
          return succ;
     The code for the DFS is      public static boolean DFS(Puzzle p, Puzzle goal, ArrayList<Puzzle> closed){
     if(p.equals(goal)){
          sol=p;
          return true;
     for(Puzzle pz : closed){
               if(pz.equals(p)){
                    return false;
     closed.add(p);
                    //Generate all possible puzzles that can be attained
                    ArrayList<Puzzle> succ = p.successors();
                    for(Puzzle puz : succ){
                         if(DFS(puz,goal,closed)){ return true;}
          return false;
}The problem is that when i run this on say the following start and goal:          Puzzle startP = new Puzzle(5,4,0,6,1,8,7,3,2);
          Puzzle goalP =new Puzzle(1,2,3,8,0,4,7,6,5);
          ArrayList<Puzzle> closed = new ArrayList<Puzzle>();
          startP.parent=null;
          boolean t = DFS(startP,goalP,closed);5-4-0
6-1-8
7-3-2 
start and goal
1-2-3
8-0-4
7-6-5
it first takes foreever which is expected but it There should be 9! possible states correct? If I print out the size of the closed array (already seen states) it gets up to about 180000 and then returns with no solution found. But this is well under the 9! possible states...
Its hard to know whats wrong and if it is even wrong.. but could someone please look at my code and see if something is off?
I dont think the successor generator is wrong as I tested the blank in every space and it got the correct successors.
Any ideas?                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

Puzzle(int p1,int p2,int p3,int p4,int p5, int p6, int p7, int p8, int p9){
          pzle = new int[9];
          pzle[0] = p1; if(p1==0){ blank=0;}
          pzle[1] = p2; if(p2==0){ blank=1;}
          pzle[2] = p3; if(p3==0){ blank=2;}
          pzle[3] = p4; if(p4==0){ blank=3;}
          pzle[4] = p5; if(p5==0){ blank=4;}
          pzle[5] = p6; if(p6==0){ blank=5;}
          pzle[6] = p7; if(p7==0){ blank=6;}
          pzle[7] = p8; if(p8==0){ blank=7;}
          pzle[8] = p9; if(p9==0){ blank=8;}
     }vs
Puzzle(int...puzzle) {
  assert puzzle.length == 9;
  this.puzzle = Arrays.copyOf(puzzle, 9);
  for (int blank = 0; blank < 9; ++blank) if (puzzle[blank] == 0) break;
  // check values are 0...8
  Arrays.sort(puzzle); // sorts the original
  for (int i = 0; i < 9; ++i) assert puzzle[i] == i;
Does anyone know if there are any simple applets or programs that do 8 Puzzle on any given start and finish state? Just to see the expected results.Not off hand, but you can always generate your starting state by moving backwards from the finish state.
Also, I dont know..but are there some instances of an 8 Puzzle that cannot be solved at all?? IIRC, you can't transform 123 to 132 leaving the remainder unchanged, though I haven't checked.

Similar Messages

  • Depth First Search help

    I have an assignment to do on a graph and have to apply depth first search so it ouputs the vertices in a order. I understand the algorithm and can do it on paper but i cannot do it in code so if anyone can help me on this. Here are the classes i am working with
    public class MatrixGraph extends AbstractGraph {
        private double[][] matrix;
        public MatrixGraph(int nV, boolean direct, boolean weight ){
            super(nV, direct, weight);
            matrix = new double[nV][nV];
            // if a weighted graph set all values to Double.POSITIVE_INFINITY 
            // otherwise set all values to 0
            //complete this code
        public boolean isEdge(int source, int dest) {
            throw new UnsupportedOperationException("Not supported yet.");
        public void insert(Edge edge) {
            throw new UnsupportedOperationException("Not supported yet.");
        public void remove(Edge edge) {
            throw new UnsupportedOperationException("Not supported yet.");
        public void depthFirstTraversal(int start){
            //Output the vertices in depth first order
    public abstract class AbstractGraph implements Graph {
        private int numV;
        private boolean directed;
        private boolean weighted;
        public AbstractGraph(int nV, boolean direct, boolean weight){
            numV = nV;
            directed = direct;     
            weighted = weight;
        public int getNumV() {
            return numV;
        public boolean isDirected() {
            return directed;
        public boolean isWeighted() {
            return weighted;
    public interface Graph {
        //returns the number of vertices
        int getNumV();
        // determine if this is a directed graph
        boolean isDirected();
        // determine if this is a weighted graph
        boolean isWeighted();
        // determine if an edge exists between source and destination
        boolean isEdge(int source, int dest);
        void insert(Edge edge);
        void remove(Edge edge);
    }

    JavaLearner2009 wrote:
    public void depthFirstTraversal(int start){
    //Output the vertices in depth first order
    }I need help on this part i don't know how to write it.You mentioned you understand the algorithm and can do it on paper so what have you tried so far?
    If you are completely stuck on implementing the traversal in Java, provide pseudo code.
    Mel

  • When to go for Breadth first search over depth first search

    hi,
    under which scenarios breadth first search could be used and under which scenarios depth first search could be used?
    what is the difference between these two searches?
    Regards,
    Ajay.

    No real clear-cut rule for when to use one over the other. It depends on the nature of your search and where you would prefer to find results.
    The difference is that in breadth-first you first search all immidiate neighbours before searching their neighbours (sort of like preorder traversal). Whereas in depth-first you search some random (or otherwise selected) neighbour and then a neighbour of that node until you can't go deeper (i.e., you've searched a neighbour that has no other neighbours). This probably isn't a very clear explanation, perhaps you'll find this more helpful: http://www.ics.uci.edu/~eppstein/161/960215.html
    If you would prefer to find results closer to the origin node, breadth first would be better. If you would prefer to find results further away use depth first.

  • Depth First Search, Breadth First Search

    BANNER
    Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - Prod
    PL/SQL Release 10.2.0.5.0 - Production
    CORE     10.2.0.5.0     Production
    TNS for Linux: Version 10.2.0.5.0 - Production
    NLSRTL Version 10.2.0.5.0 - Production
    I
    have this table that form a tree where record with column value 'more_left' 0 is located more left than 1 (for example, record with id 2 has a parent id 1 and more left than record with id 7 that also has parent id 1):
    with t as(
      select 2 id,1 parent_id,0 most_left from dual
      union all
      select 7 id,1 parent_id,1 most_left from dual
      union all
      select 8 id,1 parent_id,2 most_left from dual
      union all
      select 3 id,2 parent_id,0 most_left from dual
      union all
      select 6 id,2 parent_id,1 most_left from dual
      union all
      select 9 id,8 parent_id,0 most_left from dual
      union all
      select 12 id,8 parent_id,1 most_left from dual
    union all
      select 4 id,3 parent_id,0 most_left from dual
      union all
      select 5 id,3 parent_id,1 most_left from dual
    union all
      select 10 id,9 parent_id,0  most_left from dual
      union all
      select 11 id,9 parent_id,1 most_left from dual
    select * from t;The problem is to show all the ids, using Breadth First Search and Depth First Search. Tx, in advance.
    Edited by: Red Penyon on Apr 12, 2012 3:39 AM

    Hi,
    I fail to understand how comes there is no row for ID=1 ?
    The topmost parent (the root) should be in the table also.
    For 11g, this would work (as long as the root is in the table) :Scott@my11g SQL>l
      1  WITH t AS
      2       (SELECT 1 ID, 0 parent_id, 0 most_left
      3          FROM DUAL
      4        UNION ALL
      5        SELECT 2 ID, 1 parent_id, 0 most_left
      6          FROM DUAL
      7        UNION ALL
      8        SELECT 7 ID, 1 parent_id, 1 most_left
      9          FROM DUAL
    10        UNION ALL
    11        SELECT 8 ID, 1 parent_id, 2 most_left
    12          FROM DUAL
    13        UNION ALL
    14        SELECT 3 ID, 2 parent_id, 0 most_left
    15          FROM DUAL
    16        UNION ALL
    17        SELECT 6 ID, 2 parent_id, 1 most_left
    18          FROM DUAL
    19        UNION ALL
    20        SELECT 9 ID, 8 parent_id, 0 most_left
    21          FROM DUAL
    22        UNION ALL
    23        SELECT 12 ID, 8 parent_id, 1 most_left
    24          FROM DUAL
    25        UNION ALL
    26        SELECT 4 ID, 3 parent_id, 0 most_left
    27          FROM DUAL
    28        UNION ALL
    29        SELECT 5 ID, 3 parent_id, 1 most_left
    30          FROM DUAL
    31        UNION ALL
    32        SELECT 10 ID, 9 parent_id, 0 most_left
    33          FROM DUAL
    34        UNION ALL
    35        SELECT 11 ID, 9 parent_id, 1 most_left
    36          FROM DUAL
    37  )
    38  select
    39  rt
    40  ,listagg(id,'-') within group (order by lvl,id) BFS
    41  ,listagg(id,'-') within group (order by pth,lvl) DFS
    42  from (
    43  SELECT id, connect_by_root(id) rt, sys_connect_by_path(most_left,'-') pth, level lvl, most_left
    44        FROM  t
    45  CONNECT by nocycle  prior ID = parent_id
    46  START WITH parent_id = 0
    47  )
    48* group by rt
    Scott@my11g SQL>/
            RT BFS                            DFS
             1 1-2-7-8-3-6-9-12-4-5-10-11     1-2-3-4-5-6-7-8-9-10-11-12But as long as you're 10g, that is no real help.
    I'll try to think of a way to get that with 10g.
    10g solution for DFS :Scott@my10g SQL>l
      1  WITH t AS
      2  (
      3       SELECT 1 ID, 0 parent_id, 0 most_left FROM DUAL UNION ALL
      4       SELECT 2 ID, 1 parent_id, 0 most_left FROM DUAL UNION ALL
      5       SELECT 7 ID, 1 parent_id, 1 most_left FROM DUAL UNION ALL
      6       SELECT 8 ID, 1 parent_id, 2 most_left FROM DUAL UNION ALL
      7       SELECT 3 ID, 2 parent_id, 0 most_left FROM DUAL UNION ALL
      8       SELECT 6 ID, 2 parent_id, 1 most_left FROM DUAL UNION ALL
      9       SELECT 9 ID, 8 parent_id, 0 most_left FROM DUAL UNION ALL
    10       SELECT 12 ID, 8 parent_id, 1 most_left FROM DUAL UNION ALL
    11       SELECT 4 ID, 3 parent_id, 0 most_left FROM DUAL UNION ALL
    12       SELECT 5 ID, 3 parent_id, 1 most_left FROM DUAL UNION ALL
    13       SELECT 10 ID, 9 parent_id, 0 most_left FROM DUAL UNION ALL
    14       SELECT 11 ID, 9 parent_id, 1 most_left FROM DUAL
    15  )
    16  select max(pth) DFS
    17  from (
    18  select sys_connect_by_path(id,'-') pth
    19  from (
    20  select id,pth,lvl,most_left, row_number() over (order by pth, lvl) rn
    21  from (
    22  select id, sys_connect_by_path(most_left,'-') pth, level lvl, most_left
    23  from t
    24  CONNECT by nocycle  prior ID = parent_id
    25  START WITH parent_id = 0
    26  )
    27  order by pth, lvl
    28  )
    29  connect by prior rn= rn-1
    30  start with rn=1
    31* )
    Scott@my10g SQL>/
    DFS
    -1-2-3-4-5-6-7-8-9-10-11-12------
    10g solution for BFS :Scott@my10g SQL>l
      1  WITH t AS
      2  (
      3       SELECT 1 ID, 0 parent_id, 0 most_left FROM DUAL UNION ALL
      4       SELECT 2 ID, 1 parent_id, 0 most_left FROM DUAL UNION ALL
      5       SELECT 7 ID, 1 parent_id, 1 most_left FROM DUAL UNION ALL
      6       SELECT 8 ID, 1 parent_id, 2 most_left FROM DUAL UNION ALL
      7       SELECT 3 ID, 2 parent_id, 0 most_left FROM DUAL UNION ALL
      8       SELECT 6 ID, 2 parent_id, 1 most_left FROM DUAL UNION ALL
      9       SELECT 9 ID, 8 parent_id, 0 most_left FROM DUAL UNION ALL
    10       SELECT 12 ID, 8 parent_id, 1 most_left FROM DUAL UNION ALL
    11       SELECT 4 ID, 3 parent_id, 0 most_left FROM DUAL UNION ALL
    12       SELECT 5 ID, 3 parent_id, 1 most_left FROM DUAL UNION ALL
    13       SELECT 10 ID, 9 parent_id, 0 most_left FROM DUAL UNION ALL
    14       SELECT 11 ID, 9 parent_id, 1 most_left FROM DUAL
    15  )
    16  select max(pth) BFS
    17  from (
    18  select sys_connect_by_path(id,'-') pth
    19  from (
    20  select id,pth,lvl,most_left, row_number() over (order by lvl, pth) rn
    21  from (
    22  select id, sys_connect_by_path(most_left,'-') pth, level lvl, most_left
    23  from t
    24  CONNECT by nocycle  prior ID = parent_id
    25  START WITH parent_id = 0
    26  )
    27  order by lvl, pth
    28  )
    29  connect by prior rn= rn-1
    30  start with rn=1
    31* )
    Scott@my10g SQL>/
    BFS
    -1-2-7-8-3-6-9-12-4-5-10-11There might certainly have better ways...

  • Depth First Search w/o Recursion

    I am trying to use Depth First Search for 2-D maze, and I was just wondering if there was a straight forward and easy way of doing DFS of a maze without using recursion. Or is recursion the really only way you do DFS without invoking a lot of messy variables to hold temporary information.

    itereation instead of recursion...can you be a little more discriptive.
    For recursion I can understand how it works because when you pop out of one recursive cycle you got to the next command. So basically
    move{
    if you can
    go left
    move()
    go right
    move()
    go up
    move()
    go down
    move()
    else
    pop out of recursion
    hopefully this pseudocode makes some sense. But absically lets say with my maze I go right 3 times then can't go right anymore...well when that happens it will try to go right, because after calling move() under "go left" the next step would just be to go left. But I don't see how this can be done iteratively. If somebody can explain it pseudocode that would be cool too.

  • Depth first search tree

    Hi,
    I have stored some states in a vector (States are numbers). In my code i have printed out the parent nodes, the 2 elements after the parent nodes are there child.
    The element placed at position 0 in the vector is the root. I do not know how to implement a depth first search tree to address unreachable node. In this case, parent node 5 is unreachable, from other nodes. But i do not know how to do this. I have spent ages reading tutorials/ book, but i cant seem to convert this knowledge into java. My code is very short and therefore easy to understand
    import java.awt.*;
    import java.util.*;
    public class Vec{
    public static void main(String argv[]){
        Vec v = new Vec();
        v.remove();
        }//End of main
    public void remove(){
            Vector mv = new Vector();
            //Note how a vector can store objects
            //of different types
            mv.addElement(1);  // root and parent node of 2 elements below
            mv.addElement(2);  // child of above
            mv.addElement(1);  // child of above
            mv.addElement(2);  // parent of 2 elements below
            mv.addElement(4);
            mv.addElement(2);
            mv.addElement(3); // parent of 2 elements below
            mv.addElement(1);
            mv.addElement(3);
            mv.addElement(4); // parent of 2 elements below
            mv.addElement(3);
            mv.addElement(4);
            mv.addElement(5);  // parent of 2 elements below
            mv.addElement(2);
            mv.addElement(4);
    // below identifys the parent nodes for you, but doesnt store them as parent nodes
                    for(int i=0; i< mv.size(); i++){
            if (i % 3 == 0)
                      System.out.println(mv.elementAt(i));
       }//End of amethod
            

    Ah ok, it's a graph and not a tree. In that case don't use the tree-code I posted, but model your graph as an adjacency matrix (AM) [1]. The AM for the graph you posted in reply #5 would look like this:
    Node | 1  2  3  4  5
    -----+--------------
       1 | 1  1  0  0  0
         |
       2 | 0  1  0  1  0
         |
       3 | 1  0  1  0  0
         |
       4 | 0  0  1  1  0
         |
       5 | 0  1  1  0  0You can implement this by using a simple 2D array of integers like this:class Graph {
        private int[][] adjacencyMatrix;
        public Graph(int numNodes) {
            adjacencyMatrix = new int[numNodes][numNodes];
        public void addEdge(int from, int to) {
            adjacencyMatrix[from-1][to-1] = 1;
        public boolean isReachable(Integer start, Integer goal) {
            // your algorithm here
            return false;
        public String toString() {
            StringBuilder strb = new StringBuilder();
            for(int i = 0; i < adjacencyMatrix.length; i++) {
                int[] row = adjacencyMatrix;
    strb.append((i+1)+" | ");
    for(int j = 0; j < row.length; j++) {
    strb.append(adjacencyMatrix[i][j]+" ");
    strb.append('\n');
    return strb.toString();
    public static void main(String[] args) {
    Graph graph = new Graph(5);
    graph.addEdge(1, 1);
    graph.addEdge(1, 2);
    graph.addEdge(2, 2);
    graph.addEdge(2, 4);
    graph.addEdge(3, 1);
    graph.addEdge(3, 3);
    graph.addEdge(4, 3);
    graph.addEdge(4, 4);
    graph.addEdge(5, 2);
    graph.addEdge(5, 3);
    System.out.println("Adjacency Matrix:\n"+graph);
    System.out.println("Is node 5 reachable from node 1? "+
    graph.isReachable(new Integer(1), new Integer(5))); // should be false
    System.out.println("Is node 1 reachable from node 5? "+
    graph.isReachable(new Integer(5), new Integer(1))); // should be true: a path exists from 5 -> 3 -> 1 and 5 -> 2 -> 4 -> 3 -> 1
    Good luck.
    [1]
    http://en.wikipedia.org/wiki/Adjacency_matrix
    http://mathworld.wolfram.com/AdjacencyMatrix.html

  • Depth first search and breadth first search

    can anyone help for this program. can anyone give me a program for this without using an applet.
    thanks!!!

    can anyone help for this program. can anyone give me a
    program for this without using an applet.
    thanks!!!What are you talking about? What program? Depth-first means you recursively search from root to the first leaf, then go up one level, go down as far as you can, repeat. Breadth-first means you search every node on each level before going on to the next level.

  • First Timer Need Help using Java Web Start

                        The following Error Message was thrown when I tried to launch an app
              using Java Web Start...
    An error occurred while launching/running the application.
    Title: Swing Application - Hello World
    Vendor: Ramanujam
    Category: Download Error
    Bad MIME type returned from server when accessing resource: http:\\localhost:8000\test/SimpleExample.jnlp - text/html
              My JNLP file
    <?xml version="1.0" encoding="utf-8"?>
    <!-- JNLP File for SimpleExample Application -->
    <jnlp codebase="http:\\localhost:8000\test" href="SimpleExample.jnlp">
         <information>
              <title>Swing Application - Hello World</title>
              <vendor>Ramanujam</vendor>
              <description>Test JWS</description>
              <description kind="short">Test JWS</description>
              <offline-allowed/>
         </information>
         <resources>
              <j2se version="1.4"/>
              <jar href="test.jar"/>
         </resources>
         <application-desc main-class="JWSTest"/>
    </jnlp>
                   The exception thrown :
    NLPException[category: Download Error : Exception: null : LaunchDesc: null ]
         at com.sun.javaws.cache.DownloadProtocol.doDownload(Unknown Source)
         at com.sun.javaws.cache.DownloadProtocol.isLaunchFileUpdateAvailable(Unknown Source)
         at com.sun.javaws.LaunchDownload.getUpdatedLaunchDesc(Unknown Source)
         at com.sun.javaws.Launcher.downloadResources(Unknown Source)
         at com.sun.javaws.Launcher.handleApplicationDesc(Unknown Source)
         at com.sun.javaws.Launcher.handleLaunchFile(Unknown Source)
         at com.sun.javaws.Launcher.run(Unknown Source)
         at java.lang.Thread.run(Thread.java:536)
    Also, How to configure MIME mapping for .jnlp files on J2EE server (I do not have another server) and if there is a need, how do i deploy the jar and the jnlp file on J2EE server?
    Kindly help.....

    Hi,
    I have the same problem, but I do have configured the webserver (Apache 2) correctly and the server is NOT returning a 404 error.
    To check this I used the a tcp monitor (Apache Axis).
    The error message in Java Webstart is identical to the one discribed above.
    In the tcp monitor I see the following :
    HTTP/1.1 200 OK
    Date: Tue, 19 Nov 2002 15:16:57 GMT
    Server: Apache/2.0.43 (Win32)
    Last-Modified: Tue, 19 Nov 2002 15:13:58 GMT
    ETag: "44eb-300-bebdba39"
    Accept-Ranges: bytes
    Content-Length: 768
    Keep-Alive: timeout=15, max=97
    Connection: Keep-Alive
    Content-Type: application/x-java-jnlp-file
    <?xml version="1.0" encoding="utf-8"?>
    <jnlp spec="1.0+" codebase="http://ns003:88/ns" href="jviews.jnlp">
    <information>
    <title>JViews TWD Demo Applicatie</title>
    <vendor>Cap Gemini Ernst & Young</vendor>
    <homepage href="default.html"/>
    </information>
    <resources>
    <j2se version="1.3"/>
    <jar href="jviewsapplet.jar"/>
    </resources>
    <application-desc main-class="JViewsClient"/>
    </jnlp>
    Any idea?
    Cheers, Joost

  • First Design - Need Help

    Hello all,
    Not sure if this is the correct section but here it goes,
    I am currently tasked with designing a hierarchical network for a small business. This is the first time I have had to design any network and I don’t know really where to start. What I am looking for is some sort of step-by-step documentation that covers headings and what should be included in the written material of the project. The first one is addressing table, but where else do i go from there. I need to document everything in the project related to this network design.
    Has anyone come across any documents like this? I have found the following documents to use as information but it does not give you a project layout as such. An Example design project might be handy.
    Documents Found
    http://www.cisco.com/en/US/docs/solutions/Enterprise/Campus/Borderless_Campus_Network_1.0/Borderless_Campus_1.0_Design_Guide.pdf

    Hi James
    I guess for me to start an efficient design I would be following the below doc layout:
    1. Introduction
    This can include information about the customer, this network and this network is used for what purpose.
    2. Network Architecture
    Include two sections within this.
    Section 1: Provide Current network info with diagrams.
    Section 2: Provide a high level view of the new network, show various layers of the network that you will be using.
    3. Physical Network Design
    Here you must give a brief intro of the various products that are being used and their role in the new network. You can also show some card placements etc here if you have a distributed chassis in the network. Product intro can be found at: "http://www.cisco.com/en/US/products/index.html"
    4. Logical Network Design (Now the Actual work starts ;))
    Various sections to be included.
    Section 1: Naming - include router names, vlan naming conventions etc.
    Section 2: IP Addressing details - include IP addressing details for all layers and every required IP address. Remember to take a big block to allow for future growth for every such device/link to be added.
    Section 3: VLAN Distribution - include the various vlans, their usage, and the devices which will have the VLANs configured.
    Section 4: IOS Versions: If you are also deciding IOS versions, better is to use this section to list all such OS here. You may goto "http://tools.cisco.com/ITDIT/CFN/jsp/index.jsp" to look for the idle software.
    Section 5: Access Layer: Add everything about the Access layer here, like STP etc or if you are desiging a L3 based access then the IGP etc.. you may need to add sub-sections here.
    Section 6: Aggregation Layer: Same as section 5.
    Section 7: Core Layer: Same as section 5.
    Section 8: WAN Layer or Service Layer etc...
    5. HA
    Add details about how redundancy and resiliency is maintained in the network.
    6. QOS
    Add details about QOS in all the three layers.
    7. Application/ Services
    Add details about the various applications/services that will be using this network and try to include diagrams showing the complete traffic flow for the service within the network to the outside world.
    8. System Administration
    Add details about Syslog, TACACS, SNMP etc...
    9. Security
    Add details about how u use various techniques to secure the network , like ACL on VTY for management access etc..
    Note: It is always best to include as much diagrams as possible so that the users can relate it to the text that you have written.
    Happy Desiging In case you need anything else do let me know.
    Thanks

  • Is SQR #include a depth first search or breadth first search alrgorithm

    Just wondering if SQR compiler is a dfs or bfs algorithm? I am guessing a dfs since includes can show up at the beginning or end of the sqr or sqc definition but position is relevant. So a few questions that branch off of that one.
    I have successfully included file filea.sqc and fileb.sqc in myfile.sqr, then included file subfile.sqc in both filea.sqc and fileb.sqc. There seemed to be no error message, so I am wondering how the file include works. I would think from a compiler point of view, if we included the same procedure or function twice, we should do one of three things - ignore the second instance (do nothing), override the first instance, or throw an error.
    So, anyone know how the compiler stack is built?

    The documentation doesn't help much, but if you want to prevent an include from being loaded more than once, you should be able to use a combination of compiler directives, i.e. #IFNDEF and #DEFINE.
    In your example, if you code subfile.sqc like
    #IFNDEF SUBFILE_INCLUDED
    #DEFINE SUBFILE_INCLUDED Y
    begin-procedure subfile_proc
    #ENDIFthen you should only get one copy of the code between the #IFNDEF-#ENDIF statements.
    You could probably use something similar to test how SQR handles multiple includes of the same file. Try something like
    #IFDEF SUBFILE_INCLUDED
    Display 'Subfile included twice'
    #ENDIF
    #IFNDEF SUBFILE_INCLUDED
    #DEFINE SUBFILE_INCLUDED Y
    #ENDIFand see if the message is displayed.
    Regards,
    Bob

  • DEPTH FIRST SEARCH

    hi,
    could u help me i want to read tree(node and edges betwwen node) i want to use DFS but it's unclear how to DFS to read data stored in file
    do I need to store tree information in file or create it in the same jave
    could u help me please

    Melanie_Green wrote:
    ali99099 wrote:
    hi,
    could u help me i want to read tree(node and edges betwwen node) i want to use DFS but it's unclear how to DFS to read data stored in file
    do I need to store tree information in file or create it in the same jave
    could u help me pleaseI don't think I can explain DFS better then the 1 quadrillion sites out there, however I could sum up the algorithm in less then a sentence. Left most child before Right child then Parent, rinse repeat.
    You also mention data is stored in a file, as we have NFC what type of data is stored in the file or how the data is stored I can not give you an answer.
    p.s. Sentences start with a capital letter.
    Melp.s. "then" is an adverb, you want the conjunction "than"

  • First Mac-need help with an "event"

    Hi:
       After 3 days of busy activity with no freeze ups, I was feeling pretty confident.  However, late last night I ran into an "event" that eventually required me to reload Tiger.
       (1) I was working along and for some reason, clicking my mouse did not have any effect on any of the programs--either those running or attempting to start new ones.  
       (2) I was able to tab through those programs running and with a command-Q quit out of those running...still no effect on any mouse clicks....no problem moving the mouse and it would highlight top left corner buttons, but no effect if I attempted to minimize or exit.
       (3) I shut the computer off and restarted a number of times....came up to the same screen each time.    Held the off button both in shutting down and starting up and this time it would go to the log on screen where I was able to type in my password.  Would come up to the same screen as I left it.
       (4) Was able to use the remote control just fine to look at pictures, etc.
       (5) After some reading, did a PRAM reset....same story as above.
       (6) Finally reloaded a new copy of Tiger and was back in business.
    Questions:
      (1) Is this the typical freeze people are getting....with PCs, when it freezes, nothing moves and when you reboot, you have a fresh start?
      (2) Short of reloading Tiger, if this happens again, what remedy (other than sending my new iMac back!) would you suggest?
    Thanks for your help!

    Many thanks for the suggestion and the giving me some hope that this is not the dreaded freeze issue!
    I forgot to mention perhaps one important bit of information: There were two Finder "windows" that were present when my "event" occurred and each time I rebooted, these same two Finder windows reappeared and my mouse was unable to move them or close them or execute any command line operations.
    Not sure if this changes the story about it being a mouse software related error or not, but I found it strange that on hard reboots the machine came back with the same two windows of information.

  • Depth First Search (LIFO) - stacked based

    Hi Everyone, 
    Herewith attached my workable Breadth fist search (FIFO) code - queue based. Now, I would like to change to LIFO - stacked based. 
    Anyone here can give some guideline on it?
    Many thanks.  
    Attachments:
    Version 1.zip ‏64 KB

    I've changed it to queue FIFO. but in the end, it won't show a complete path to reach the destination point. However, queue stack LIFO can show a complete path from starting point till the goal point.
    Does that means queue FIFO cannot be used in finding a complete path out? Is there any possible way for this method to find its way out? 
    Herewith attached queue FIFO. 
    Attachments:
    Queue FIFO.zip ‏64 KB

  • First WebSite - Need Help

    Hit there i am wanting to create my first website and will be using Iweb - can you tell me if its easy to add flsh and java to websites via iweb?
    Also can anyone offer any advice oh ho to write some first time java scripts?
    thansk

    rock03:
    Welcome to the Apple Discussions. You'll have to add the flash and java code post-publishing. Check out this site for some tips: http://varkgirl.com/Varkgirl/Basic%20HTML%20Additions.html
    Do you Twango?

  • First podcast--need help

    Hi,
    I just did my first vodcast--everything's fine, except...
    when you click on the website link, it brings up the direct link to my xml file (which is in a folder on my server)
    I just recoded the rss feed, but wanted to make sure it's ok before I upload it.
    Should the <link> tag at the beginning of the file (right under title and description (NOT as part of the <item> description) have a link to my homepage? I originally put in a direct link to the xml file over there.
    BTW, under the <item> tags, where I have description, I put a direct link to the xml file (rss feed), then the <enclosure> is the direct link to the actual encoded video.
    WOuld appreciate it if anyone could let me know if this is correct.
    Thanks.

    Gee, thanks so much, Brian. Here's a link:
    http://www.chilltownonline.com/rss/bravenewworld2.xml
    If you see anything else that looks weird, please let me know. I didn't copy the xml code into an index page--just left it in the folder I created for rss. If I have include the xml code in the index page for my site, will it still call up the correct file(s) if the exclosures are direct links?
    I didn't put in any GUID--what would the hand coding be to include the GUID tag with perma link=true? Also, I wasn't sure how to set my GUID id number. Where do I get that, or do I make it up? If I make it up, is there anything I should know re: setting up a correct line of 16 characters?
    Thanks again.
    Leesa

Maybe you are looking for