At the moment I am having a similar problem to:
[Only registered and activated users can see links. ]

My client connects to the jaggrab server, but it seems to have problems with loading the cache data on startUp.

Code:
			if(!lowMem)
			{
				nextSong = 0;
				try
				{
					nextSong = Integer.parseInt(getParameter("music"));
				}
				catch(Exception _ex) { }
				songChanging = true;
				onDemandFetcher.method558(2, nextSong);
				while(onDemandFetcher.getNodeCount() > 0)
				{
					processOnDemandQueue();
					try
					{
						Thread.sleep(100L);
					}
					catch(Exception _ex) { }
					if(onDemandFetcher.anInt1349 > 3)
					{
						loadError();
						return;
					}
				}
			}
OR

Code:
			drawLoadingText(65, "Requesting animations");
			int k = onDemandFetcher.getVersionCount(1);
			for(int i1 = 0; i1 < k; i1++)
				onDemandFetcher.method558(1, i1);
			while(onDemandFetcher.getNodeCount() > 0)
			{
				int j1 = k - onDemandFetcher.getNodeCount();
				if(j1 > 0)
					drawLoadingText(65, "Loading animations - " + (j1 * 100) / k + "%");
				processOnDemandQueue();
				try
				{
					Thread.sleep(100L);
				}
				catch(Exception _ex) { }
				if(onDemandFetcher.anInt1349 > 3)
				{
					loadError();
					return;
				}
			}
			drawLoadingText(70, "Requesting models");
			k = onDemandFetcher.getVersionCount(0);
			for(int k1 = 0; k1 < k; k1++)
			{
				int l1 = onDemandFetcher.getModelIndex(k1);
				if((l1 & 1) != 0)
					onDemandFetcher.method558(0, k1);
			}

			k = onDemandFetcher.getNodeCount();
			while(onDemandFetcher.getNodeCount() > 0)
			{
				int i2 = k - onDemandFetcher.getNodeCount();
				if(i2 > 0)
					drawLoadingText(70, "Loading models - " + (i2 * 100) / k + "%");
				processOnDemandQueue();
				try
				{
					Thread.sleep(100L);
				}
				catch(Exception _ex) { }
			}
			if(decompressors[0] != null)
			{
				drawLoadingText(75, "Requesting maps");
				onDemandFetcher.method558(3, onDemandFetcher.method562(0, 48, 47));
				onDemandFetcher.method558(3, onDemandFetcher.method562(1, 48, 47));
				onDemandFetcher.method558(3, onDemandFetcher.method562(0, 48, 48));
				onDemandFetcher.method558(3, onDemandFetcher.method562(1, 48, 48));
				onDemandFetcher.method558(3, onDemandFetcher.method562(0, 48, 49));
				onDemandFetcher.method558(3, onDemandFetcher.method562(1, 48, 49));
				onDemandFetcher.method558(3, onDemandFetcher.method562(0, 47, 47));
				onDemandFetcher.method558(3, onDemandFetcher.method562(1, 47, 47));
				onDemandFetcher.method558(3, onDemandFetcher.method562(0, 47, 48));
				onDemandFetcher.method558(3, onDemandFetcher.method562(1, 47, 48));
				onDemandFetcher.method558(3, onDemandFetcher.method562(0, 148, 48));
				onDemandFetcher.method558(3, onDemandFetcher.method562(1, 148, 48));
				k = onDemandFetcher.getNodeCount();
				while(onDemandFetcher.getNodeCount() > 0)
				{
					int j2 = k - onDemandFetcher.getNodeCount();
					if(j2 > 0)
						drawLoadingText(75, "Loading maps - " + (j2 * 100) / k + "%");
					processOnDemandQueue();
					try
					{
						Thread.sleep(100L);
					}
					catch(Exception _ex) { }
				}
			}
			k = onDemandFetcher.getVersionCount(0);
			for(int k2 = 0; k2 < k; k2++)
			{
				int l2 = onDemandFetcher.getModelIndex(k2);
				byte byte0 = 0;
				if((l2 & 8) != 0)
					byte0 = 10;
				else
				if((l2 & 0x20) != 0)
					byte0 = 9;
				else
				if((l2 & 0x10) != 0)
					byte0 = 8;
				else
				if((l2 & 0x40) != 0)
					byte0 = 7;
				else
				if((l2 & 0x80) != 0)
					byte0 = 6;
				else
				if((l2 & 2) != 0)
					byte0 = 5;
				else
				if((l2 & 4) != 0)
					byte0 = 4;
				if((l2 & 1) != 0)
					byte0 = 3;
				if(byte0 != 0)
					onDemandFetcher.method563(byte0, 0, k2);
			}

			onDemandFetcher.method554(isMembers);
			if(!lowMem)
			{
				int l = onDemandFetcher.getVersionCount(2);
				for(int i3 = 1; i3 < l; i3++)
					if(onDemandFetcher.method569(i3))
						onDemandFetcher.method563((byte)1, 2, i3);

			}
Those code's arent normally in a PI, but I added them from an original 317.

But it get's stuck on starting up If I add them, and if I remove them, I get the black screen.