<html><body><div style="color:#000; background-color:#fff; font-family:arial, helvetica, sans-serif;font-size:10pt"><div style="font-family: arial, helvetica, sans-serif; font-size: 10pt; ">Hello list</div><div style="font-family: arial, helvetica, sans-serif; font-size: 10pt; "><br></div><div><font face="arial, helvetica, sans-serif" size="2">Many thanks for all very useful questions and&nbsp;answers during time when I was in this list. I used geoserver with all layers in epsg:4326 , the base map I used google layer in epsg: 900913,&nbsp;&nbsp;</font></div><div><font face="arial, helvetica, sans-serif" size="2">the problem is WFS didn't appear to my map&nbsp;although Gird which bind with wfs it displayed all the data&nbsp;, If I remove&nbsp;</font><span style="font-family: arial, helvetica, sans-serif; text-decoration: underline; font-size: 13px; ">maxExtent: bounds1, &nbsp;</span><span style="font-family: arial, helvetica, sans-serif; font-size: 13px;
 ">&nbsp;wfs map layer could appear to the map, I try to reprojection for wfs layer but it could not done. If someone have any experiences in this problem please help me.</span></div><div><span style="font-family: arial, helvetica, sans-serif; font-size: 13px;">Bellow one is some related&nbsp;</span><span style="font-family: arial, helvetica, sans-serif; font-size: 13px; ">functions</span><span style="font-family: arial, helvetica, sans-serif; font-size: 13px; ">&nbsp;to my problem</span></div><div><span style="font-family: arial, helvetica, sans-serif; font-size: 13px; "><br></span></div><div><span style="font-family: arial, helvetica, sans-serif; font-size: 13px; "><br></span></div><div><font face="arial, helvetica, sans-serif" size="2"><div>var bounds1 = new OpenLayers.Bounds(&nbsp;</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 11131950, 2273050,</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
 &nbsp; 12245130, &nbsp;2875730);</div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>var geographic = new OpenLayers.Projection("EPSG:4326");</div><div>&nbsp; &nbsp; &nbsp; &nbsp;var mercator = new OpenLayers.Projection("EPSG:900913");</div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>mapOptions = {</div><div><span class="Apple-tab-span" style="white-space:pre">                </span></div><div><span class="Apple-tab-span" style="white-space:pre">                </span><span style="text-decoration: underline;">maxExtent: bounds1,&nbsp;</span></div><div><span class="Apple-tab-span" style="white-space:pre">                </span></div><div><span class="Apple-tab-span" style="white-space:pre">                </span>minResolution:
 "auto",</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>maxResolution: 'auto',</div><div>&nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">                </span>projection: new OpenLayers.Projection("EPSG:900913"),</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>displayProjection: new OpenLayers.Projection("EPSG:4326"),</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>//projection: "EPSG:4326",</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>numZoomLevels: 20 ,</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>units: "m",</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>allOverlays: false</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>};</div><div><div><br></div></div></font></div><div><font face="arial, helvetica, sans-serif" size="2"><div><div>var protocol=new
 OpenLayers.Protocol.WFS({<span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>srsName: "EPSG:4326"</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>,url: "http://localhost:8083/geoserver/wfs"<span class="Apple-tab-span" style="white-space:pre">                </span> &nbsp;&nbsp;</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>,featureType: "VN_provinces"</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>,featureNS: "http://www.openplans.org/topp"</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>});</div><div><div>&nbsp;var ddBounds = new OpenLayers.Bounds(<br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 100,20,110,25</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; );</div><div><br></div></div><div><div>var
 form_Quang_1=new GeoExt.form.FormPanel({ <span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp; &nbsp;region: "center",</div><div><span class="Apple-tab-span" style="white-space:pre">                </span> &nbsp;id: "form_Quang_1",</div><div><span class="Apple-tab-span" style="white-space:pre">                </span> &nbsp;//title: "Search by Population",</div><div><span class="Apple-tab-span" style="white-space:pre">                </span> &nbsp; title: 'Search by Population'+'&amp;#160&amp;#160&amp;#160&amp;#160&amp;#160&lt;img src="./img/info.png" style="line-height:19px;font-height:10px;vertical-align:bottom" TITLE="Search for Provinces having their population in interval of two values (min and max of population). The results will appeare on the grid responsed with Map, you could turn on/off Search Map by select on/off in Search windows below or Tree(Map Layers/Openlayers)
 above"/&gt;',</div><div><span class="Apple-tab-span" style="white-space:pre">                </span> &nbsp;layout: "fit",</div><div><span class="Apple-tab-span" style="white-space:pre">                </span> &nbsp;</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>collapsible: true,</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>collapsed: true,</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>split: true,</div><div><span class="Apple-tab-span" style="white-space:pre">        </span><span class="Apple-tab-span" style="white-space: pre; ">        </span> &nbsp;autoScroll: true,</div><div><span class="Apple-tab-span" style="white-space: pre; ">                </span> &nbsp;bodyStyle: "padding:10px;",</div><div><span class="Apple-tab-span" style="white-space:pre">                </span> &nbsp;protocol: protocol,</div><div><span class="Apple-tab-span" style="white-space:pre">                </span> &nbsp;items: [</div><div><span class="Apple-tab-span"
 style="white-space:pre">                        </span>{</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;xtype:'textfield',</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;id: "textfield_11", &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;width: 75,</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;//height: 30,<span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;name: "Danso__ge",</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;allowBlank: false,</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;value: '0',</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;fieldLabel: "&gt;="</div><div><span
 class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;},{</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;xtype:'textfield',</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;id: "textfield_12", &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;width: 75,</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;//height: 30,<span class="Apple-tab-span" style="white-space:pre">                                </span> &nbsp;</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;name: "Danso__le",</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;allowBlank: false,</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp; value: '10000000',</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>
 &nbsp;fieldLabel: "&lt;="</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> &nbsp;},{<span class="Apple-tab-span" style="white-space:pre">                                </span></div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>xtype: 'button',</div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>text: '&lt;span style="font-weight:bold; "color:red"&gt; |-Run-| &lt;/span&gt;',</div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>//anchor: '100%',</div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>handler: function(){</div><div><span class="Apple-tab-span" style="white-space:pre">                                        </span>var mypanel = Ext.getCmp('grid_Quang');</div><div><span class="Apple-tab-span" style="white-space:pre">                                        </span>mypanel.expand();</div><div><span class="Apple-tab-span" style="white-space:pre">                                        </span>form_Quang_1.search();</div><div><span class="Apple-tab-span"
 style="white-space:pre">                                </span>}},</div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>{<span class="Apple-tab-span" style="white-space:pre">                                </span></div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>xtype: 'button',</div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>text: '&lt;span style="font-weight:bold; "color:red"&gt; |-Remove Search Map-|&lt;/span&gt;',</div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>anchor: '100%',</div><div><span class="Apple-tab-span" style="white-space:pre">                                        </span>handler: function(){</div><div><span class="Apple-tab-span" style="white-space:pre">                                        </span>for(var i=0; i&lt;map.layers.length ; i++){</div><div><span class="Apple-tab-span" style="white-space:pre">                                                </span>if(map.layers[i].name==="Search_map"){</div><div><span class="Apple-tab-span" style="white-space:pre">                                                
        </span>map.removeLayer(vec_Layer)</div><div><span class="Apple-tab-span" style="white-space:pre">                                                </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">                                        </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">                                        </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>} &nbsp;<span class="Apple-tab-span" style="white-space:pre">                </span></div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>],</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>listeners: {</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span> actioncomplete: function(form, action) {</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;var features = action.response.features;</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; store_Quang.loadData(features);</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
 vm=map.getLayersByName("Search_map");<span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">                                </span></div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(vm.length===0){</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; map.addLayer(vec_Layer);</div><div><span class="Apple-tab-span" style="white-space:pre">                                        </span>store_Quang.bind(vec_Layer);</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="Apple-tab-span" style="white-space:pre">                        </span>&nbsp; &nbsp; select_Quang.bind(vec_Layer);</div><div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;map.zoomToExtent(</div><div><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
 &nbsp;ddBounds.transform(map.displayProjection, map.getProjectionObject())</div><div><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;);</div></div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }</div><div><br></div><div>&nbsp; &nbsp; &nbsp; &nbsp; },</div><div>&nbsp; &nbsp; &nbsp; &nbsp; keys: [{ key: [Ext.EventObject.ENTER],</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; handler: function() {</div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>var mypanel = Ext.getCmp('grid_Quang');</div><div><span class="Apple-tab-span" style="white-space:pre">                </span> <span class="Apple-tab-span" style="white-space:pre">        </span>mypanel.expand();</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; form_Quang_1.search();</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }</div><div>&nbsp; &nbsp; &nbsp;
 &nbsp; }]</div><div><br></div><div>&nbsp; &nbsp; });</div><div><br></div><div>Many Thanks&nbsp;</div><div><br></div><div>T.X.Q</div></div></div></font></div></div></body></html>